Use Spree's approach for handling config when testing

This commit is contained in:
Rob Harrington
2017-10-14 14:51:13 +11:00
parent d4eb27a4ed
commit efa71c4ac8

View File

@@ -29,6 +29,7 @@ require 'spree/api/testing_support/setup'
require 'spree/api/testing_support/helpers'
require 'spree/api/testing_support/helpers_decorator'
require 'spree/testing_support/authorization_helpers'
require 'spree/testing_support/preferences'
# Capybara config
require 'capybara/poltergeist'
@@ -93,8 +94,21 @@ RSpec.configure do |config|
# Geocoding
config.before(:each) { Spree::Address.any_instance.stub(:geocode).and_return([1,1]) }
default_country_id = Spree::Config[:default_country_id]
checkout_zone = Spree::Config[:checkout_zone]
currency = Spree::Config[:currency]
# Ensure we start with consistent config settings
config.before(:each) { Spree::Config.products_require_tax_category = false }
config.before(:each) do
reset_spree_preferences do |spree_config|
spree_config.default_country_id = default_country_id
spree_config.checkout_zone = checkout_zone
spree_config.currency = currency
spree_config.shipping_instructions = true
spree_config.auto_capture = true
end
Spree::Api::Config[:requires_authentication] = true
end
# Helpers
config.include Rails.application.routes.url_helpers
@@ -102,6 +116,7 @@ RSpec.configure do |config|
config.include Spree::CheckoutHelpers
config.include Spree::MoneyHelper
config.include Spree::TestingSupport::ControllerRequests, :type => :controller
config.include Spree::TestingSupport::Preferences
config.include Devise::TestHelpers, :type => :controller
config.extend Spree::Api::TestingSupport::Setup, :type => :controller
config.include Spree::Api::TestingSupport::Helpers, :type => :controller