mirror of
https://github.com/openfoodfoundation/openfoodnetwork
synced 2026-01-24 20:36:49 +00:00
Stub or provide mailer as appropriate
This commit is contained in:
@@ -74,6 +74,7 @@ describe Admin::ProxyOrdersController, type: :controller do
|
||||
|
||||
before do
|
||||
# Processing order to completion
|
||||
allow(Spree::OrderMailer).to receive(:cancel_email) { double(:email, deliver: true) }
|
||||
order.update_attribute(:shipping_method_id, shipping_method.id)
|
||||
while !order.completed? do break unless order.next! end
|
||||
proxy_order.update_attribute(:canceled_at, Time.zone.now)
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
require 'spec_helper'
|
||||
|
||||
describe Spree::OrderMailer do
|
||||
let!(:mail_method) { create(:mail_method, preferred_mails_from: 'spree@example.com') }
|
||||
|
||||
describe "order confimation" do
|
||||
after do
|
||||
ActionMailer::Base.deliveries.clear
|
||||
@@ -20,10 +22,6 @@ describe Spree::OrderMailer do
|
||||
ship_address = create(:address, :address1 => "distributor address", :city => 'The Shire', :zipcode => "1234")
|
||||
@order1 = create(:order, :distributor => @distributor, :bill_address => @bill_address, ship_address: ship_address, :special_instructions => @shipping_instructions)
|
||||
ActionMailer::Base.deliveries = []
|
||||
Spree::MailMethod.create!(
|
||||
environment: Rails.env,
|
||||
preferred_mails_from: 'spree@example.com'
|
||||
)
|
||||
end
|
||||
|
||||
describe "for customers" do
|
||||
|
||||
@@ -23,6 +23,7 @@ describe ProxyOrder, type: :model do
|
||||
let(:order) { create(:completed_order_with_totals) }
|
||||
|
||||
it "returns true and sets canceled_at to the current time, and cancels the order" do
|
||||
expect(Spree::OrderMailer).to receive(:cancel_email) { double(:email, deliver: true) }
|
||||
expect(proxy_order.cancel).to be true
|
||||
expect(proxy_order.reload.canceled_at).to be_within(5.seconds).of Time.now
|
||||
expect(order.reload.state).to eq 'canceled'
|
||||
@@ -89,8 +90,11 @@ describe ProxyOrder, type: :model do
|
||||
end
|
||||
|
||||
context "and the order has already been cancelled" do
|
||||
before { while !order.completed? do break unless order.next! end }
|
||||
before { order.cancel }
|
||||
before do
|
||||
allow(Spree::OrderMailer).to receive(:cancel_email) { double(:email, deliver: true) }
|
||||
while !order.completed? do break unless order.next! end
|
||||
order.cancel
|
||||
end
|
||||
|
||||
it "returns true, clears canceled_at and resumes the order" do
|
||||
expect(proxy_order.resume).to be true
|
||||
@@ -126,8 +130,11 @@ describe ProxyOrder, type: :model do
|
||||
end
|
||||
|
||||
context "and the order has been cancelled" do
|
||||
before { while !order.completed? do break unless order.next! end }
|
||||
before { order.cancel }
|
||||
before do
|
||||
allow(Spree::OrderMailer).to receive(:cancel_email) { double(:email, deliver: true) }
|
||||
while !order.completed? do break unless order.next! end
|
||||
order.cancel
|
||||
end
|
||||
|
||||
it "returns false and does nothing" do
|
||||
expect(proxy_order.resume).to eq false
|
||||
|
||||
Reference in New Issue
Block a user