Sha256: 4661b9002f9924f542990d969593c59254f8eb331d72a52dbff4c14d40d99549

Contents?: true

Size: 1.23 KB

Versions: 1

Compression:

Stored size: 1.23 KB

Contents

RSpec.describe 'Order shipping' do
  context 'with purchase_labels set to true', vcr: { cassette_name: 'integration/order_shipping/with_purchase_labels' } do
    it 'buys the rate in EasyPost' do
      stub_easypost_config(purchase_labels: true)
      stub_spree_preferences(require_payment_to_ship: false, track_inventory_levels: false)
      use_easypost_estimator
      create_easypost_shipping_methods

      order = Spree::TestingSupport::OrderWalkthrough.up_to(:complete)
      shipment = order.shipments.first
      shipment.ship!

      expect(shipment).to be_shipped
      expect(shipment.tracking).to be_present
    end
  end

  context 'with purchase_labels set to false', vcr: { cassette_name: 'integration/order_shipping/without_purchase_labels' } do
    it 'does not buy the rate in EasyPost' do
      stub_easypost_config(purchase_labels: false)
      stub_spree_preferences(require_payment_to_ship: false, track_inventory_levels: false)
      use_easypost_estimator
      create_easypost_shipping_methods

      order = Spree::TestingSupport::OrderWalkthrough.up_to(:complete)
      shipment = order.shipments.first
      shipment.ship!

      expect(shipment).to be_shipped
      expect(shipment.tracking).not_to be_present
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
solidus_easypost-3.0.0 spec/integration/order_shipping_spec.rb