Sha256: 94bf22165f1e81ac25ec057a5d1b27ab8d669172d3559986e013e0d5dd692d46

Contents?: true

Size: 1.15 KB

Versions: 56

Compression:

Stored size: 1.15 KB

Contents

# frozen_string_literal: true

require 'spree/testing_support/factory_bot'
Spree::TestingSupport::FactoryBot.when_cherry_picked do
  Spree::TestingSupport::FactoryBot.deprecate_cherry_picking

  require 'spree/testing_support/factories/order_factory'
  require 'spree/testing_support/factories/stock_location_factory'
  require 'spree/testing_support/factories/shipping_method_factory'
end


FactoryBot.define do
  factory :shipment, class: 'Spree::Shipment' do
    tracking { 'U10000' }
    cost { 100.00 }
    state { 'pending' }
    order
    stock_location

    transient do
      shipping_method { nil }
    end

    after(:create) do |shipment, evaluator|
      shipping_method = evaluator.shipping_method || create(:shipping_method, cost: evaluator.cost)
      shipment.shipping_rates.create!(
        shipping_method: shipping_method,
        cost: evaluator.cost,
        selected: true
      )

      shipment.order.line_items.each do |line_item|
        line_item.quantity.times do
          shipment.inventory_units.create!(
            variant_id: line_item.variant_id,
            line_item_id: line_item.id
          )
        end
      end
    end
  end
end

Version data entries

56 entries across 56 versions & 1 rubygems

Version Path
solidus_core-3.4.6 lib/spree/testing_support/factories/shipment_factory.rb
solidus_core-3.4.5 lib/spree/testing_support/factories/shipment_factory.rb
solidus_core-3.4.4 lib/spree/testing_support/factories/shipment_factory.rb
solidus_core-3.3.4 lib/spree/testing_support/factories/shipment_factory.rb
solidus_core-3.2.9 lib/spree/testing_support/factories/shipment_factory.rb
solidus_core-3.2.8 lib/spree/testing_support/factories/shipment_factory.rb
solidus_core-3.3.3 lib/spree/testing_support/factories/shipment_factory.rb
solidus_core-3.4.3 lib/spree/testing_support/factories/shipment_factory.rb
solidus_core-3.4.2 lib/spree/testing_support/factories/shipment_factory.rb
solidus_core-3.2.7 lib/spree/testing_support/factories/shipment_factory.rb
solidus_core-3.3.2 lib/spree/testing_support/factories/shipment_factory.rb
solidus_core-3.4.1 lib/spree/testing_support/factories/shipment_factory.rb
solidus_core-3.4.0 lib/spree/testing_support/factories/shipment_factory.rb
solidus_core-3.3.1 lib/spree/testing_support/factories/shipment_factory.rb
solidus_core-3.2.6 lib/spree/testing_support/factories/shipment_factory.rb
solidus_core-3.1.9 lib/spree/testing_support/factories/shipment_factory.rb
solidus_core-3.3.0 lib/spree/testing_support/factories/shipment_factory.rb
solidus_core-3.2.5 lib/spree/testing_support/factories/shipment_factory.rb
solidus_core-3.2.4 lib/spree/testing_support/factories/shipment_factory.rb
solidus_core-3.2.3 lib/spree/testing_support/factories/shipment_factory.rb