Sha256: 9b00e1fd4e43c7e343ea261bfc4614dde31ccc98d1c65a372a1be767b15517a3

Contents?: true

Size: 1.23 KB

Versions: 7

Compression:

Stored size: 1.23 KB

Contents

FactoryBot.define do
  factory :stock_location, class: Spree::StockLocation do
    name                  { FFaker::Name.unique.name }
    address1              { '1600 Pennsylvania Ave NW' }
    city                  { 'Washington' }
    zipcode               { '20500' }
    phone                 { '(202) 456-1111' }
    active                { true }
    backorderable_default { true }

    country  { |stock_location| Spree::Country.first || stock_location.association(:country) }
    state do |stock_location|
      stock_location.country.states.first || stock_location.association(:state, country: stock_location.country)
    end

    factory :stock_location_with_items do
      after(:create) do |stock_location, _evaluator|
        # variant will add itself to all stock_locations in an after_create
        # creating a product will automatically create a master variant
        store = create(:store)
        product_1 = create(:product, stores: [store])
        product_2 = create(:product, stores: [store])

        stock_location.stock_items.where(variant_id: product_1.master.id).first.adjust_count_on_hand(10)
        stock_location.stock_items.where(variant_id: product_2.master.id).first.adjust_count_on_hand(20)
      end
    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
spree_core-4.3.3 lib/spree/testing_support/factories/stock_location_factory.rb
spree_core-4.3.2 lib/spree/testing_support/factories/stock_location_factory.rb
spree_core-4.3.1 lib/spree/testing_support/factories/stock_location_factory.rb
spree_core-4.3.0 lib/spree/testing_support/factories/stock_location_factory.rb
spree_core-4.3.0.rc3 lib/spree/testing_support/factories/stock_location_factory.rb
spree_core-4.3.0.rc2 lib/spree/testing_support/factories/stock_location_factory.rb
spree_core-4.3.0.rc1 lib/spree/testing_support/factories/stock_location_factory.rb