Sha256: f90db91e373e9d8ca096d8314496c4dc3f522358667a57c82c4501538a936966

Contents?: true

Size: 1.32 KB

Versions: 14

Compression:

Stored size: 1.32 KB

Contents

# Based on spree commerce controller hacks.
# https://github.com/spree/spree/blob/master/core/spec/support/controller_hacks.rb
# Thanks!

module Alchemy
	module Specs
		module ControllerHacks

			def get(action, parameters = nil, session = nil, flash = nil)
				process_alchemy_action(action, parameters, session, flash, "GET")
			end

			# Executes a request simulating POST HTTP method and set/volley the response
			def post(action, parameters = nil, session = nil, flash = nil)
				process_alchemy_action(action, parameters, session, flash, "POST")
			end

			# Executes a request simulating PUT HTTP method and set/volley the response
			def put(action, parameters = nil, session = nil, flash = nil)
				process_alchemy_action(action, parameters, session, flash, "PUT")
			end

			# Executes a request simulating DELETE HTTP method and set/volley the response
			def delete(action, parameters = nil, session = nil, flash = nil)
				process_alchemy_action(action, parameters, session, flash, "DELETE")
			end

		private

			def process_alchemy_action(action, parameters = nil, session = nil, flash = nil, method = "GET")
				parameters ||= {}
				process(action, parameters.merge!(:use_route => :alchemy), session, flash, method)
			end

		end
	end
end

RSpec.configure do |c|
	c.include Alchemy::Specs::ControllerHacks, :type => :controller
end

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
alchemy_cms-2.1.12 spec/support/alchemy/controller_hacks.rb
alchemy_cms-2.1.11 spec/support/alchemy/controller_hacks.rb
alchemy_cms-2.1.9.1 spec/support/alchemy/controller_hacks.rb
alchemy_cms-2.1.9 spec/support/alchemy/controller_hacks.rb
alchemy_cms-2.1.8.1 spec/support/alchemy/controller_hacks.rb
alchemy_cms-2.1.8 spec/support/alchemy/controller_hacks.rb
alchemy_cms-2.1.7 spec/support/alchemy/controller_hacks.rb
alchemy_cms-2.1.6 spec/support/alchemy/controller_hacks.rb
alchemy_cms-2.1.5 spec/support/alchemy/controller_hacks.rb
alchemy_cms-2.1.4 spec/support/alchemy/controller_hacks.rb
alchemy_cms-2.1.3 spec/support/alchemy/controller_hacks.rb
alchemy_cms-2.1.2 spec/support/alchemy/controller_hacks.rb
alchemy_cms-2.1.1 spec/support/alchemy/controller_hacks.rb
alchemy_cms-2.1 spec/support/alchemy/controller_hacks.rb