mirror of
https://github.com/openfoodfoundation/openfoodnetwork
synced 2026-01-24 20:36:49 +00:00
Merge pull request #8472 from Matt-Yorkley/notify-resumed
Include items from resumed orders when mailing producers
This commit is contained in:
@@ -65,7 +65,7 @@ class ProducerMailer < Spree::BaseMailer
|
||||
from_order_cycle(order_cycle).
|
||||
sorted_by_name_and_unit_value.
|
||||
merge(Spree::Product.with_deleted.in_supplier(producer)).
|
||||
merge(Spree::Order.by_state('complete'))
|
||||
merge(Spree::Order.by_state(["complete", "resumed"]))
|
||||
end
|
||||
|
||||
def total_from_line_items(line_items)
|
||||
|
||||
@@ -26,6 +26,7 @@ describe ProducerMailer, type: :mailer do
|
||||
let(:p3) { create(:product, name: "Banana", price: 34.56, supplier: s1) }
|
||||
let(:p4) { create(:product, name: "coffee", price: 45.67, supplier: s1) }
|
||||
let(:p5) { create(:product, name: "Daffodil", price: 56.78, supplier: s1) }
|
||||
let(:p6) { create(:product, name: "Eggs", price: 67.89, supplier: s1) }
|
||||
let(:order_cycle) { create(:simple_order_cycle) }
|
||||
let!(:incoming_exchange) {
|
||||
order_cycle.exchanges.create! sender: s1, receiver: d1, incoming: true,
|
||||
@@ -103,6 +104,22 @@ describe ProducerMailer, type: :mailer do
|
||||
expect(mail.body.encoded).not_to include p5.name
|
||||
end
|
||||
|
||||
context "when a cancelled order has been resumed" do
|
||||
let!(:order_resumed) do
|
||||
order = create(:order, distributor: d1, order_cycle: order_cycle, state: 'complete')
|
||||
order.line_items << create(:line_item, variant: p6.variants.first)
|
||||
order.finalize!
|
||||
order.cancel
|
||||
order.resume
|
||||
order.save!
|
||||
order
|
||||
end
|
||||
|
||||
it "includes items from resumed orders" do
|
||||
expect(mail.body.encoded).to include p6.name
|
||||
end
|
||||
end
|
||||
|
||||
it "includes the total" do
|
||||
expect(mail.body.encoded).to include 'Total: $50.00'
|
||||
expect(body_as_html(mail).find("tr.total-row"))
|
||||
|
||||
Reference in New Issue
Block a user