summaryrefslogtreecommitdiff
path: root/spec/models/spree/shipment_spec.rb
diff options
context:
space:
mode:
Diffstat (limited to 'spec/models/spree/shipment_spec.rb')
-rw-r--r--spec/models/spree/shipment_spec.rb16
1 files changed, 16 insertions, 0 deletions
diff --git a/spec/models/spree/shipment_spec.rb b/spec/models/spree/shipment_spec.rb
new file mode 100644
index 0000000..27f213b
--- /dev/null
+++ b/spec/models/spree/shipment_spec.rb
@@ -0,0 +1,16 @@
+RSpec.describe Spree::Shipment do
+ describe '#update' do
+ subject { shipment.ship }
+
+ let(:shipment) { create(:shipment, state: 'ready', order: order) }
+ let(:order) { create :order_with_line_items }
+
+ it 'fires the shipment_shipped event exactly once' do
+ stub_const('Spree::Event', class_spy(Spree::Event))
+
+ expect(Spree::Event).to receive(:fire).with('shipment_shipped', shipment: shipment).once
+
+ subject
+ end
+ end
+end