spree_core 3.6.6 → 3.7.0.rc1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/assets/javascripts/spree.js +60 -0
- data/app/finders/spree/countries/find.rb +31 -0
- data/app/finders/spree/credit_cards/find.rb +12 -0
- data/app/finders/spree/line_items/find_by_variant.rb +13 -0
- data/app/finders/spree/orders/find_current.rb +34 -0
- data/app/finders/spree/products/find.rb +93 -0
- data/app/finders/spree/taxons/find.rb +79 -0
- data/app/helpers/spree/base_helper.rb +7 -3
- data/app/helpers/spree/products_helper.rb +2 -1
- data/app/models/concerns/spree/adjustment_source.rb +11 -6
- data/app/models/concerns/spree/user_address.rb +2 -2
- data/app/models/concerns/spree/vat_price_calculation.rb +2 -1
- data/app/models/spree/ability.rb +2 -2
- data/app/models/spree/address.rb +23 -14
- data/app/models/spree/adjustable/adjustments_updater.rb +1 -1
- data/app/models/spree/adjustable/promotion_accumulator.rb +2 -1
- data/app/models/spree/adjustment.rb +18 -3
- data/app/models/spree/asset/support/active_storage.rb +1 -1
- data/app/models/spree/calculator.rb +1 -4
- data/app/models/spree/calculator/flexi_rate.rb +8 -11
- data/app/models/spree/calculator/returns/default_refund_amount.rb +3 -1
- data/app/models/spree/calculator/shipping/flexi_rate.rb +13 -13
- data/app/models/spree/country.rb +4 -0
- data/app/models/spree/credit_card.rb +8 -2
- data/app/models/spree/customer_return.rb +1 -0
- data/app/models/spree/fulfilment_changer.rb +117 -0
- data/app/models/spree/gateway.rb +1 -0
- data/app/models/spree/gateway/bogus.rb +3 -2
- data/app/models/spree/image.rb +13 -0
- data/app/models/spree/image/configuration/active_storage.rb +3 -3
- data/app/models/spree/inventory_unit.rb +1 -1
- data/app/models/spree/line_item.rb +3 -2
- data/app/models/spree/order.rb +72 -28
- data/app/models/spree/order/checkout.rb +10 -0
- data/app/models/spree/order/store_credit.rb +14 -35
- data/app/models/spree/order_contents.rb +22 -118
- data/app/models/spree/order_inventory.rb +6 -2
- data/app/models/spree/order_merger.rb +1 -3
- data/app/models/spree/order_promotion.rb +10 -0
- data/app/models/spree/order_updater.rb +11 -8
- data/app/models/spree/payment.rb +9 -3
- data/app/models/spree/payment/processing.rb +4 -4
- data/app/models/spree/preferences/store.rb +3 -3
- data/app/models/spree/product.rb +32 -0
- data/app/models/spree/product/scopes.rb +13 -34
- data/app/models/spree/product_property.rb +1 -1
- data/app/models/spree/promotion.rb +2 -0
- data/app/models/spree/promotion/actions/create_adjustment.rb +6 -1
- data/app/models/spree/promotion/actions/create_item_adjustments.rb +10 -2
- data/app/models/spree/promotion/actions/create_line_items.rb +3 -2
- data/app/models/spree/promotion/actions/free_shipping.rb +1 -0
- data/app/models/spree/promotion/rules/item_total.rb +2 -2
- data/app/models/spree/promotion_handler/coupon.rb +10 -6
- data/app/models/spree/promotion_handler/page.rb +1 -1
- data/app/models/spree/promotion_handler/promotion_duplicator.rb +4 -4
- data/app/models/spree/refund.rb +1 -1
- data/app/models/spree/reimbursement/reimbursement_type_engine.rb +1 -0
- data/app/models/spree/reimbursement_tax_calculator.rb +2 -2
- data/app/models/spree/return_item.rb +7 -4
- data/app/models/spree/return_item/eligibility_validator/default.rb +6 -6
- data/app/models/spree/return_item/exchange_variant_eligibility/same_product.rb +1 -1
- data/app/models/spree/shipment.rb +27 -34
- data/app/models/spree/shipping_method.rb +2 -0
- data/app/models/spree/shipping_rate.rb +31 -16
- data/app/models/spree/stock/adjuster.rb +1 -0
- data/app/models/spree/stock/estimator.rb +2 -0
- data/app/models/spree/stock/inventory_unit_builder.rb +5 -5
- data/app/models/spree/stock/packer.rb +1 -0
- data/app/models/spree/stock/quantifier.rb +16 -4
- data/app/models/spree/stock_item.rb +1 -0
- data/app/models/spree/stock_location.rb +1 -1
- data/app/models/spree/stock_movement.rb +1 -0
- data/app/models/spree/stock_transfer.rb +1 -1
- data/app/models/spree/store_credit.rb +5 -10
- data/app/models/spree/tax_rate.rb +3 -0
- data/app/models/spree/taxon.rb +2 -2
- data/app/models/spree/taxon_image.rb +18 -0
- data/app/models/spree/{taxon_icon → taxon_image}/configuration/active_storage.rb +2 -2
- data/app/models/spree/{taxon_icon → taxon_image}/configuration/paperclip.rb +1 -1
- data/app/models/spree/variant.rb +28 -2
- data/app/models/spree/zone.rb +5 -5
- data/app/paginators/spree/shared/paginate.rb +19 -0
- data/app/services/spree/cart/add_item.rb +43 -0
- data/app/services/spree/cart/create.rb +21 -0
- data/app/services/spree/cart/recalculate.rb +32 -0
- data/app/services/spree/cart/remove_item.rb +37 -0
- data/app/services/spree/cart/remove_line_item.rb +16 -0
- data/app/services/spree/cart/set_quantity.rb +22 -0
- data/app/services/spree/cart/update.rb +37 -0
- data/app/services/spree/checkout/add_store_credit.rb +51 -0
- data/app/services/spree/checkout/advance.rb +18 -0
- data/app/services/spree/checkout/complete.rb +23 -0
- data/app/services/spree/checkout/get_shipping_rates.rb +48 -0
- data/app/services/spree/checkout/next.rb +13 -0
- data/app/services/spree/checkout/remove_store_credit.rb +17 -0
- data/app/services/spree/checkout/update.rb +13 -0
- data/app/services/spree/compare_line_items.rb +21 -0
- data/app/services/spree/generate_token.rb +20 -0
- data/app/sorters/spree/products/sort.rb +58 -0
- data/config/locales/en.yml +20 -1
- data/db/default/spree/countries.rb +1 -1
- data/db/default/spree/default_reimbursement_type.rb +1 -1
- data/db/default/spree/roles.rb +2 -2
- data/db/default/spree/states.rb +2 -1
- data/db/default/spree/stores.rb +1 -1
- data/db/default/spree/zones.rb +5 -6
- data/db/migrate/20120831092320_spree_one_two.rb +36 -36
- data/db/migrate/20120831092359_spree_promo_one_two.rb +1 -1
- data/db/migrate/20130211190146_create_spree_stock_items.rb +1 -1
- data/db/migrate/20130211191120_create_spree_stock_locations.rb +1 -1
- data/db/migrate/20130301162924_create_shipping_method_categories.rb +1 -1
- data/db/migrate/20130304162240_create_spree_shipping_rates.rb +1 -1
- data/db/migrate/20130305143310_create_stock_movements.rb +1 -1
- data/db/migrate/20130418125341_create_spree_stock_transfers.rb +1 -1
- data/db/migrate/20140205120320_create_spree_payment_capture_events.rb +1 -1
- data/db/migrate/20140309023735_migrate_old_preferences.rb +5 -1
- data/db/migrate/20140309024355_create_spree_stores.rb +1 -1
- data/db/migrate/20140625214618_create_spree_refunds.rb +1 -1
- data/db/migrate/20140702140656_create_spree_return_authorization_inventory_unit.rb +1 -1
- data/db/migrate/20140713140455_create_spree_return_authorization_reasons.rb +1 -1
- data/db/migrate/20140713140527_create_spree_refund_reasons.rb +1 -1
- data/db/migrate/20140715182625_create_spree_promotion_categories.rb +1 -1
- data/db/migrate/20140718133010_create_spree_customer_returns.rb +1 -1
- data/db/migrate/20140725131539_create_spree_reimbursements.rb +1 -1
- data/db/migrate/20140731150017_create_spree_reimbursement_types.rb +1 -1
- data/db/migrate/20150118210639_create_spree_store_credits.rb +1 -1
- data/db/migrate/20150118211500_create_spree_store_credit_categories.rb +1 -1
- data/db/migrate/20150118212051_create_spree_store_credit_events.rb +1 -1
- data/db/migrate/20150118212101_create_spree_store_credit_types.rb +1 -1
- data/db/migrate/20150309161154_ensure_payments_have_numbers.rb +6 -2
- data/db/migrate/20180613080857_rename_guest_token_to_token_in_orders.rb +5 -0
- data/db/migrate/20180915160001_add_timestamps_to_spree_prices.rb +12 -0
- data/db/migrate/20181024100754_add_deleted_at_to_spree_credit_cards.rb +6 -0
- data/lib/generators/spree/custom_user/custom_user_generator.rb +1 -3
- data/lib/generators/spree/dummy/dummy_generator.rb +30 -33
- data/lib/generators/spree/dummy/templates/rails/database.yml +6 -1
- data/lib/generators/spree/dummy/templates/rails/test.rb +2 -0
- data/lib/generators/spree/dummy_model/dummy_model_generator.rb +1 -1
- data/lib/generators/spree/install/install_generator.rb +2 -1
- data/lib/spree/core.rb +2 -4
- data/lib/spree/core/controller_helpers/auth.rb +15 -5
- data/lib/spree/core/controller_helpers/common.rb +0 -11
- data/lib/spree/core/controller_helpers/order.rb +6 -6
- data/lib/spree/core/controller_helpers/respond_with.rb +3 -1
- data/lib/spree/core/controller_helpers/strong_parameters.rb +1 -0
- data/lib/spree/core/engine.rb +9 -3
- data/lib/spree/core/importer/order.rb +8 -12
- data/lib/spree/core/product_duplicator.rb +6 -1
- data/lib/spree/core/product_filters.rb +15 -14
- data/lib/spree/core/query_filters.rb +11 -0
- data/lib/spree/core/query_filters/comparable.rb +46 -0
- data/lib/spree/core/query_filters/date.rb +8 -0
- data/lib/spree/core/query_filters/number.rb +8 -0
- data/lib/spree/core/query_filters/text.rb +32 -0
- data/lib/spree/core/token_generator.rb +2 -2
- data/lib/spree/core/version.rb +1 -1
- data/lib/spree/i18n.rb +1 -1
- data/lib/spree/migrations.rb +2 -0
- data/lib/spree/money.rb +12 -12
- data/lib/spree/permitted_attributes.rb +11 -6
- data/lib/spree/service_module.rb +98 -0
- data/lib/spree/testing_support/capybara_config.rb +20 -0
- data/lib/spree/testing_support/capybara_ext.rb +6 -3
- data/lib/spree/testing_support/factories.rb +1 -1
- data/lib/spree/testing_support/factories/address_factory.rb +10 -9
- data/lib/spree/testing_support/factories/adjustment_factory.rb +8 -6
- data/lib/spree/testing_support/factories/country_factory.rb +4 -4
- data/lib/spree/testing_support/factories/credit_card_factory.rb +7 -5
- data/lib/spree/testing_support/factories/customer_return_factory.rb +1 -1
- data/lib/spree/testing_support/factories/image_factory.rb +7 -1
- data/lib/spree/testing_support/factories/inventory_unit_factory.rb +5 -4
- data/lib/spree/testing_support/factories/line_item_factory.rb +3 -2
- data/lib/spree/testing_support/factories/options_factory.rb +2 -3
- data/lib/spree/testing_support/factories/order_factory.rb +16 -12
- data/lib/spree/testing_support/factories/order_promotion_factory.rb +6 -0
- data/lib/spree/testing_support/factories/payment_factory.rb +9 -7
- data/lib/spree/testing_support/factories/payment_method_factory.rb +8 -8
- data/lib/spree/testing_support/factories/price_factory.rb +2 -2
- data/lib/spree/testing_support/factories/product_factory.rb +10 -10
- data/lib/spree/testing_support/factories/promotion_category_factory.rb +1 -1
- data/lib/spree/testing_support/factories/promotion_factory.rb +14 -4
- data/lib/spree/testing_support/factories/property_factory.rb +2 -2
- data/lib/spree/testing_support/factories/prototype_factory.rb +3 -3
- data/lib/spree/testing_support/factories/refund_factory.rb +6 -6
- data/lib/spree/testing_support/factories/reimbursement_factory.rb +1 -1
- data/lib/spree/testing_support/factories/reimbursement_type_factory.rb +2 -2
- data/lib/spree/testing_support/factories/return_authorization_factory.rb +4 -3
- data/lib/spree/testing_support/factories/role_factory.rb +1 -1
- data/lib/spree/testing_support/factories/shipment_factory.rb +3 -3
- data/lib/spree/testing_support/factories/shipping_method_factory.rb +4 -4
- data/lib/spree/testing_support/factories/state_factory.rb +2 -5
- data/lib/spree/testing_support/factories/stock_factory.rb +3 -3
- data/lib/spree/testing_support/factories/stock_item_factory.rb +1 -1
- data/lib/spree/testing_support/factories/stock_location_factory.rb +7 -7
- data/lib/spree/testing_support/factories/stock_movement_factory.rb +3 -3
- data/lib/spree/testing_support/factories/store_credit_category_factory.rb +2 -2
- data/lib/spree/testing_support/factories/store_credit_type_factory.rb +1 -1
- data/lib/spree/testing_support/factories/store_factory.rb +5 -4
- data/lib/spree/testing_support/factories/tax_rate_factory.rb +2 -1
- data/lib/spree/testing_support/factories/user_factory.rb +4 -4
- data/lib/spree/testing_support/factories/variant_factory.rb +15 -15
- data/lib/spree/testing_support/factories/zone_factory.rb +3 -3
- data/lib/spree/testing_support/image_helpers.rb +19 -0
- data/lib/tasks/core.rake +21 -4
- data/lib/tasks/exchanges.rake +4 -4
- data/spree_core.gemspec +3 -3
- data/vendor/assets/javascripts/fetch.umd.js +531 -0
- data/vendor/assets/javascripts/polyfill.min.js +1 -0
- metadata +50 -17
- data/app/assets/javascripts/spree.js.coffee +0 -59
- data/app/models/spree/taxon_icon.rb +0 -5
- data/lib/generators/spree/dummy/templates/initializers/custom_user.rb +0 -1
- data/lib/spree/core/environment.rb +0 -15
- data/lib/spree/core/environment/calculators.rb +0 -11
- data/lib/spree/core/environment_extension.rb +0 -28
- data/lib/spree/core/validators/email.rb +0 -8
- data/lib/spree/promo/environment.rb +0 -9
@@ -1,14 +1,15 @@
|
|
1
1
|
FactoryBot.define do
|
2
2
|
factory :payment, class: Spree::Payment do
|
3
|
-
|
3
|
+
order
|
4
|
+
amount { 45.75 }
|
5
|
+
state { 'checkout' }
|
6
|
+
response_code { '12345' }
|
7
|
+
|
4
8
|
association(:payment_method, factory: :credit_card_payment_method)
|
5
9
|
association(:source, factory: :credit_card)
|
6
|
-
order
|
7
|
-
state 'checkout'
|
8
|
-
response_code '12345'
|
9
10
|
|
10
11
|
factory :payment_with_refund do
|
11
|
-
state 'completed'
|
12
|
+
state { 'completed' }
|
12
13
|
after :create do |payment|
|
13
14
|
create(:refund, amount: 5, payment: payment)
|
14
15
|
end
|
@@ -16,9 +17,10 @@ FactoryBot.define do
|
|
16
17
|
end
|
17
18
|
|
18
19
|
factory :check_payment, class: Spree::Payment do
|
19
|
-
amount 45.75
|
20
|
-
association(:payment_method, factory: :check_payment_method)
|
20
|
+
amount { 45.75 }
|
21
21
|
order
|
22
|
+
|
23
|
+
association(:payment_method, factory: :check_payment_method)
|
22
24
|
end
|
23
25
|
|
24
26
|
factory :store_credit_payment, class: Spree::Payment, parent: :payment do
|
@@ -1,23 +1,23 @@
|
|
1
1
|
FactoryBot.define do
|
2
2
|
factory :check_payment_method, class: Spree::PaymentMethod::Check do
|
3
|
-
name 'Check'
|
3
|
+
name { 'Check' }
|
4
4
|
end
|
5
5
|
|
6
6
|
factory :credit_card_payment_method, class: Spree::Gateway::Bogus do
|
7
|
-
name 'Credit Card'
|
7
|
+
name { 'Credit Card' }
|
8
8
|
end
|
9
9
|
|
10
10
|
# authorize.net was moved to spree_gateway.
|
11
11
|
# Leaving this factory in place with bogus in case anyone is using it.
|
12
12
|
factory :simple_credit_card_payment_method, class: Spree::Gateway::BogusSimple do
|
13
|
-
name 'Credit Card'
|
13
|
+
name { 'Credit Card' }
|
14
14
|
end
|
15
15
|
|
16
16
|
factory :store_credit_payment_method, class: Spree::PaymentMethod::StoreCredit do
|
17
|
-
type 'Spree::PaymentMethod::StoreCredit'
|
18
|
-
name 'Store Credit'
|
19
|
-
description 'Store Credit'
|
20
|
-
active true
|
21
|
-
auto_capture true
|
17
|
+
type { 'Spree::PaymentMethod::StoreCredit' }
|
18
|
+
name { 'Store Credit' }
|
19
|
+
description { 'Store Credit' }
|
20
|
+
active { true }
|
21
|
+
auto_capture { true }
|
22
22
|
end
|
23
23
|
end
|
@@ -1,20 +1,20 @@
|
|
1
1
|
FactoryBot.define do
|
2
2
|
factory :base_product, class: Spree::Product do
|
3
|
-
sequence(:name)
|
4
|
-
description
|
5
|
-
price 19.99
|
6
|
-
cost_price 17.00
|
7
|
-
sku
|
8
|
-
available_on
|
9
|
-
deleted_at nil
|
3
|
+
sequence(:name) { |n| "Product ##{n} - #{Kernel.rand(9999)}" }
|
4
|
+
description { generate(:random_description) }
|
5
|
+
price { 19.99 }
|
6
|
+
cost_price { 17.00 }
|
7
|
+
sku { generate(:sku) }
|
8
|
+
available_on { 1.year.ago }
|
9
|
+
deleted_at { nil }
|
10
10
|
shipping_category { |r| Spree::ShippingCategory.first || r.association(:shipping_category) }
|
11
11
|
|
12
12
|
# ensure stock item will be created for this products master
|
13
|
-
before(:create) { create(:stock_location)
|
13
|
+
before(:create) { create(:stock_location) unless Spree::StockLocation.any? }
|
14
14
|
|
15
15
|
factory :custom_product do
|
16
|
-
name 'Custom Product'
|
17
|
-
price 17.99
|
16
|
+
name { 'Custom Product' }
|
17
|
+
price { 17.99 }
|
18
18
|
|
19
19
|
tax_category { |r| Spree::TaxCategory.first || r.association(:tax_category) }
|
20
20
|
end
|
@@ -1,10 +1,10 @@
|
|
1
1
|
FactoryBot.define do
|
2
2
|
factory :promotion, class: Spree::Promotion do
|
3
|
-
name 'Promo'
|
3
|
+
name { 'Promo' }
|
4
4
|
|
5
5
|
trait :with_line_item_adjustment do
|
6
6
|
transient do
|
7
|
-
adjustment_rate 10
|
7
|
+
adjustment_rate { 10 }
|
8
8
|
end
|
9
9
|
|
10
10
|
after(:create) do |promotion, evaluator|
|
@@ -17,7 +17,7 @@ FactoryBot.define do
|
|
17
17
|
|
18
18
|
trait :with_order_adjustment do
|
19
19
|
transient do
|
20
|
-
weighted_order_adjustment_amount 10
|
20
|
+
weighted_order_adjustment_amount { 10 }
|
21
21
|
end
|
22
22
|
|
23
23
|
after(:create) do |promotion, evaluator|
|
@@ -32,7 +32,7 @@ FactoryBot.define do
|
|
32
32
|
|
33
33
|
trait :with_item_total_rule do
|
34
34
|
transient do
|
35
|
-
item_total_threshold_amount 10
|
35
|
+
item_total_threshold_amount { 10 }
|
36
36
|
end
|
37
37
|
|
38
38
|
after(:create) do |promotion, evaluator|
|
@@ -48,4 +48,14 @@ FactoryBot.define do
|
|
48
48
|
end
|
49
49
|
factory :promotion_with_item_total_rule, traits: [:with_item_total_rule]
|
50
50
|
end
|
51
|
+
|
52
|
+
factory :free_shipping_promotion, class: Spree::Promotion do
|
53
|
+
name { 'Free Shipping Promotion' }
|
54
|
+
|
55
|
+
after(:create) do |promotion|
|
56
|
+
action = Spree::Promotion::Actions::FreeShipping.new
|
57
|
+
action.promotion = promotion
|
58
|
+
action.save
|
59
|
+
end
|
60
|
+
end
|
51
61
|
end
|
@@ -1,11 +1,11 @@
|
|
1
1
|
FactoryBot.define do
|
2
2
|
factory :prototype, class: Spree::Prototype do
|
3
|
-
name 'Baseball Cap'
|
3
|
+
name { 'Baseball Cap' }
|
4
4
|
properties { [create(:property)] }
|
5
5
|
end
|
6
6
|
factory :prototype_with_option_types, class: Spree::Prototype do
|
7
|
-
name 'Baseball Cap'
|
8
|
-
properties
|
7
|
+
name { 'Baseball Cap' }
|
8
|
+
properties { [create(:property)] }
|
9
9
|
option_types { [create(:option_type)] }
|
10
10
|
end
|
11
11
|
end
|
@@ -2,21 +2,21 @@ FactoryBot.define do
|
|
2
2
|
sequence(:refund_transaction_id) { |n| "fake-refund-transaction-#{n}" }
|
3
3
|
|
4
4
|
factory :refund, class: Spree::Refund do
|
5
|
-
amount 100.00
|
5
|
+
amount { 100.00 }
|
6
6
|
transaction_id { generate(:refund_transaction_id) }
|
7
7
|
association(:payment, state: 'completed')
|
8
8
|
association(:reason, factory: :refund_reason)
|
9
9
|
end
|
10
10
|
|
11
11
|
factory :default_refund_reason, class: Spree::RefundReason do
|
12
|
-
name 'Return processing'
|
13
|
-
active true
|
14
|
-
mutable false
|
12
|
+
name { 'Return processing' }
|
13
|
+
active { true }
|
14
|
+
mutable { false }
|
15
15
|
end
|
16
16
|
|
17
17
|
factory :refund_reason, class: Spree::RefundReason do
|
18
18
|
sequence(:name) { |n| "Refund for return ##{n}" }
|
19
|
-
active true
|
20
|
-
mutable false
|
19
|
+
active { true }
|
20
|
+
mutable { false }
|
21
21
|
end
|
22
22
|
end
|
@@ -3,7 +3,8 @@ FactoryBot.define do
|
|
3
3
|
association(:order, factory: :shipped_order)
|
4
4
|
association(:stock_location, factory: :stock_location)
|
5
5
|
association(:reason, factory: :return_authorization_reason)
|
6
|
-
|
6
|
+
|
7
|
+
memo { 'Items were broken' }
|
7
8
|
end
|
8
9
|
|
9
10
|
factory :new_return_authorization, class: Spree::ReturnAuthorization do
|
@@ -14,7 +15,7 @@ FactoryBot.define do
|
|
14
15
|
|
15
16
|
factory :return_authorization_reason, class: Spree::ReturnAuthorizationReason do
|
16
17
|
sequence(:name) { |n| "Defect ##{n}" }
|
17
|
-
active true
|
18
|
-
mutable false
|
18
|
+
active { true }
|
19
|
+
mutable { false }
|
19
20
|
end
|
20
21
|
end
|
@@ -1,9 +1,9 @@
|
|
1
1
|
FactoryBot.define do
|
2
2
|
factory :base_shipping_method, class: Spree::ShippingMethod do
|
3
|
-
zones
|
4
|
-
name 'UPS Ground'
|
5
|
-
code 'UPS_GROUND'
|
6
|
-
display_on 'both'
|
3
|
+
zones { |_a| [Spree::Zone.global] }
|
4
|
+
name { 'UPS Ground' }
|
5
|
+
code { 'UPS_GROUND' }
|
6
|
+
display_on { 'both' }
|
7
7
|
|
8
8
|
before(:create) do |shipping_method, _evaluator|
|
9
9
|
if shipping_method.shipping_categories.empty?
|
@@ -3,11 +3,8 @@ FactoryBot.define do
|
|
3
3
|
sequence(:name) { |n| "STATE_NAME_#{n}" }
|
4
4
|
sequence(:abbr) { |n| "STATE_ABBR_#{n}" }
|
5
5
|
country do |country|
|
6
|
-
|
7
|
-
|
8
|
-
else
|
9
|
-
country.association(:country)
|
10
|
-
end
|
6
|
+
usa = Spree::Country.find_by(numcode: 840)
|
7
|
+
usa.present? ? usa : country.association(:country)
|
11
8
|
end
|
12
9
|
end
|
13
10
|
end
|
@@ -3,7 +3,7 @@ FactoryBot.define do
|
|
3
3
|
factory :stock_packer, class: Spree::Stock::Packer do
|
4
4
|
transient do
|
5
5
|
stock_location { build(:stock_location) }
|
6
|
-
contents []
|
6
|
+
contents { [] }
|
7
7
|
end
|
8
8
|
|
9
9
|
initialize_with { new(stock_location, contents) }
|
@@ -11,8 +11,8 @@ FactoryBot.define do
|
|
11
11
|
|
12
12
|
factory :stock_package, class: Spree::Stock::Package do
|
13
13
|
transient do
|
14
|
-
stock_location
|
15
|
-
contents
|
14
|
+
stock_location { build(:stock_location) }
|
15
|
+
contents { [] }
|
16
16
|
variants_contents { {} }
|
17
17
|
end
|
18
18
|
|
@@ -1,12 +1,12 @@
|
|
1
1
|
FactoryBot.define do
|
2
2
|
factory :stock_location, class: Spree::StockLocation do
|
3
|
-
name
|
4
|
-
address1 '1600 Pennsylvania Ave NW'
|
5
|
-
city 'Washington'
|
6
|
-
zipcode '20500'
|
7
|
-
phone '(202) 456-1111'
|
8
|
-
active true
|
9
|
-
backorderable_default true
|
3
|
+
name { FFaker::Name.unique.name }
|
4
|
+
address1 { '1600 Pennsylvania Ave NW' }
|
5
|
+
city { 'Washington' }
|
6
|
+
zipcode { '20500' }
|
7
|
+
phone { '(202) 456-1111' }
|
8
|
+
active { true }
|
9
|
+
backorderable_default { true }
|
10
10
|
|
11
11
|
country { |stock_location| Spree::Country.first || stock_location.association(:country) }
|
12
12
|
state do |stock_location|
|
@@ -1,9 +1,9 @@
|
|
1
1
|
FactoryBot.define do
|
2
2
|
factory :store_credit_category, class: Spree::StoreCreditCategory do
|
3
|
-
name 'Exchange'
|
3
|
+
name { 'Exchange' }
|
4
4
|
end
|
5
5
|
|
6
6
|
factory :store_credit_gift_card_category, class: Spree::StoreCreditCategory do
|
7
|
-
name Spree::StoreCreditCategory::GIFT_CARD_CATEGORY_NAME
|
7
|
+
name { Spree::StoreCreditCategory::GIFT_CARD_CATEGORY_NAME }
|
8
8
|
end
|
9
9
|
end
|
@@ -1,8 +1,9 @@
|
|
1
1
|
FactoryBot.define do
|
2
2
|
factory :store, class: Spree::Store do
|
3
|
-
sequence(:code)
|
4
|
-
name 'Spree Test Store'
|
5
|
-
url 'www.example.com'
|
6
|
-
mail_from_address 'spree@example.org'
|
3
|
+
sequence(:code) { |i| "spree_#{i}" }
|
4
|
+
name { 'Spree Test Store' }
|
5
|
+
url { 'www.example.com' }
|
6
|
+
mail_from_address { 'spree@example.org' }
|
7
|
+
default_currency { 'USD' }
|
7
8
|
end
|
8
9
|
end
|
@@ -4,11 +4,11 @@ FactoryBot.define do
|
|
4
4
|
end
|
5
5
|
|
6
6
|
factory :user, class: Spree.user_class do
|
7
|
-
email
|
8
|
-
login
|
9
|
-
password 'secret'
|
7
|
+
email { generate(:random_email) }
|
8
|
+
login { email }
|
9
|
+
password { 'secret' }
|
10
10
|
password_confirmation { password }
|
11
|
-
authentication_token
|
11
|
+
authentication_token { generate(:user_authentication_token) } if Spree.user_class.attribute_method? :authentication_token
|
12
12
|
|
13
13
|
factory :admin_user do
|
14
14
|
spree_roles { [Spree::Role.find_by(name: 'admin') || create(:role, name: 'admin')] }
|