mirror of
https://github.com/openfoodfoundation/openfoodnetwork
synced 2026-02-27 01:43:22 +00:00
Fixed query in order_cycle_management_report and fixed the respective spec by setting shipping_method in order through shipments
This commit is contained in:
@@ -107,7 +107,7 @@ module OpenFoodNetwork
|
||||
|
||||
def filter_to_shipping_method(orders)
|
||||
if params[:shipping_method_in].present?
|
||||
orders.joins(:shipping_method).where(shipping_method_id: params[:shipping_method_in])
|
||||
orders.joins(shipments: :shipping_methods).where(shipping_method_id: params[:shipping_method_in])
|
||||
else
|
||||
orders
|
||||
end
|
||||
|
||||
@@ -69,7 +69,8 @@ module OpenFoodNetwork
|
||||
let!(:oc1) { create(:simple_order_cycle) }
|
||||
let!(:pm1) { create(:payment_method, name: "PM1") }
|
||||
let!(:sm1) { create(:shipping_method, name: "ship1") }
|
||||
let!(:order1) { create(:order, shipping_method: sm1, order_cycle: oc1) }
|
||||
let!(:s1) { create(:shipment_with, :shipping_method, shipping_method: sm1) }
|
||||
let!(:order1) { create(:order, shipments: [s1], order_cycle: oc1) }
|
||||
let!(:payment1) { create(:payment, order: order1, payment_method: pm1) }
|
||||
|
||||
it "returns all orders sans-params" do
|
||||
@@ -89,7 +90,6 @@ module OpenFoodNetwork
|
||||
pm3 = create(:payment_method, name: "PM3")
|
||||
order2 = create(:order, payments: [create(:payment, payment_method: pm2)])
|
||||
order3 = create(:order, payments: [create(:payment, payment_method: pm3)])
|
||||
# payment2 = create(:payment, order: order2, payment_method: pm2)
|
||||
|
||||
subject.stub(:params).and_return(payment_method_in: [pm1.id, pm3.id] )
|
||||
subject.filter(orders).should match_array [order1, order3]
|
||||
@@ -98,8 +98,10 @@ module OpenFoodNetwork
|
||||
it "filters to a shipping method" do
|
||||
sm2 = create(:shipping_method, name: "ship2")
|
||||
sm3 = create(:shipping_method, name: "ship3")
|
||||
order2 = create(:order, shipping_method: sm2)
|
||||
order3 = create(:order, shipping_method: sm3)
|
||||
s2 = create(:shipment_with, :shipping_method, shipping_method: sm2)
|
||||
s3 = create(:shipment_with, :shipping_method, shipping_method: sm3)
|
||||
order2 = create(:order, shipments: [s2])
|
||||
order3 = create(:order, shipments: [s3])
|
||||
|
||||
subject.stub(:params).and_return(shipping_method_in: [sm1.id, sm3.id])
|
||||
expect(subject.filter(orders)).to match_array [order1, order3]
|
||||
|
||||
Reference in New Issue
Block a user