From 2f76e0b15baf240de6c050a177acc61d330dbb31 Mon Sep 17 00:00:00 2001 From: Luis Ramos Date: Tue, 2 Jun 2020 13:54:33 +0100 Subject: [PATCH] Bring methods from Spree::TestingSupport::ControllerRequests to our ControllerRequestsHelper so we can merge them later --- spec/spec_helper.rb | 2 -- spec/support/controller_requests_helper.rb | 28 ++++++++++++++++++++++ 2 files changed, 28 insertions(+), 2 deletions(-) diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb index 2ff99b5f11..edc9519e94 100644 --- a/spec/spec_helper.rb +++ b/spec/spec_helper.rb @@ -36,7 +36,6 @@ WebMock.disable_net_connect!( # Requires supporting ruby files with custom matchers and macros, etc, # in spec/support/ and its subdirectories. Dir[Rails.root.join("spec/support/**/*.rb")].each { |f| require f } -require 'spree/testing_support/controller_requests' require 'spree/testing_support/capybara_ext' require 'spree/api/testing_support/setup' require 'spree/testing_support/authorization_helpers' @@ -149,7 +148,6 @@ RSpec.configure do |config| config.include Spree::CheckoutHelpers config.include Spree::MoneyHelper config.include Spree::TestingSupport::Preferences - config.include Spree::TestingSupport::ControllerRequests, type: :controller config.include ControllerRequestsHelper, type: :controller config.include Devise::TestHelpers, type: :controller config.extend Spree::Api::TestingSupport::Setup, type: :controller diff --git a/spec/support/controller_requests_helper.rb b/spec/support/controller_requests_helper.rb index 73afb2c1f3..42575f7eaf 100644 --- a/spec/support/controller_requests_helper.rb +++ b/spec/support/controller_requests_helper.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + require 'active_support/all' module ControllerRequestsHelper @@ -17,6 +19,27 @@ module ControllerRequestsHelper api_process(action, params, session, flash, "DELETE") end + def spree_get(action, parameters = nil, session = nil, flash = nil) + process_spree_action(action, parameters, session, flash, "GET") + end + + # Executes a request simulating POST HTTP method and set/volley the response + def spree_post(action, parameters = nil, session = nil, flash = nil) + process_spree_action(action, parameters, session, flash, "POST") + end + + # Executes a request simulating PUT HTTP method and set/volley the response + def spree_put(action, parameters = nil, session = nil, flash = nil) + process_spree_action(action, parameters, session, flash, "PUT") + end + + # Executes a request simulating DELETE HTTP method and set/volley the response + def spree_delete(action, parameters = nil, session = nil, flash = nil) + process_spree_action(action, parameters, session, flash, "DELETE") + end + + private + def api_process(action, params = {}, session = nil, flash = nil, method = "get") process(action, params. @@ -25,4 +48,9 @@ module ControllerRequestsHelper flash, method) end + + def process_spree_action(action, parameters = nil, session = nil, flash = nil, method = "GET") + parameters ||= {} + process(action, parameters.merge!(use_route: :spree), session, flash, method) + end end