summaryrefslogtreecommitdiff
path: root/spec/super_good
diff options
context:
space:
mode:
Diffstat (limited to 'spec/super_good')
-rw-r--r--spec/super_good/solidus_taxjar/api_params_spec.rb4
-rw-r--r--spec/super_good/solidus_taxjar_spec.rb15
2 files changed, 18 insertions, 1 deletions
diff --git a/spec/super_good/solidus_taxjar/api_params_spec.rb b/spec/super_good/solidus_taxjar/api_params_spec.rb
index 6c13e03..1e879e7 100644
--- a/spec/super_good/solidus_taxjar/api_params_spec.rb
+++ b/spec/super_good/solidus_taxjar/api_params_spec.rb
@@ -8,9 +8,9 @@ RSpec.describe SuperGood::SolidusTaxjar::ApiParams do
line_items: [line_item],
number: "R111222333",
ship_address: ship_address,
- shipment_total: BigDecimal("3.01"),
store: store,
total: order_total,
+ shipments: [shipment],
user_id: 12345
).tap do |order|
order.update! completed_at: DateTime.new(2018, 3, 6, 12, 10, 33)
@@ -119,6 +119,8 @@ RSpec.describe SuperGood::SolidusTaxjar::ApiParams do
)
end
+ let(:shipment) { Spree::Shipment.create!(cost: BigDecimal("3.01")) }
+
describe "#order_params" do
subject { described_class.order_params(order) }
diff --git a/spec/super_good/solidus_taxjar_spec.rb b/spec/super_good/solidus_taxjar_spec.rb
index 6236b2f..d9ef1d4 100644
--- a/spec/super_good/solidus_taxjar_spec.rb
+++ b/spec/super_good/solidus_taxjar_spec.rb
@@ -73,5 +73,20 @@ RSpec.describe SuperGood::SolidusTaxjar do
let(:spree_line_item) { Spree::LineItem.new }
it { is_expected.to eq "Sales Tax" }
end
+
+ describe ".shipping_calculator" do
+ subject { described_class.shipping_calculator.call(order) }
+
+ let(:order) { create :order }
+ let(:shipment) { create :shipment, order: order, cost: 20 }
+
+ before do
+ create :adjustment, order: order, adjustable: shipment, amount: -10, eligible: true, source: create(:shipping_rate, shipment: shipment)
+ end
+
+ it "returns the shipment total including promotions" do
+ expect(subject).to eq(10)
+ end
+ end
end
end