class RSpec::Hanami::RequestHelpers::Request
Public Class Methods
new(method, path, options)
click to toggle source
# File lib/rspec/hanami/request_helpers.rb, line 5 def initialize(method, path, options) @path, @query_string = path.split('?', 2) @method = method @params = options[:params] @headers = options[:headers] || {} end
Public Instance Methods
default_env()
click to toggle source
# File lib/rspec/hanami/request_helpers.rb, line 26 def default_env { 'SCRIPT_NAME' => '', 'SERVER_NAME' => 'localhost', 'SERVER_PORT' => '800613', 'rack.version' => [1, 3], 'rack.url_scheme' => 'http', 'rack.input' => StringIO.new, 'rack.errors' => StringIO.new, 'rack.multithread' => false, 'rack.multiprocess' => false, 'rack.run_once' => false, 'rack.hijack?' => false } end
env()
click to toggle source
# File lib/rspec/hanami/request_helpers.rb, line 12 def env default_env.tap do |env| env['PATH_INFO'] = @path env['REQUEST_METHOD'] = @method env['QUERY_STRING'] = "?#{@query_string}" env['rack.input'] = StringIO.new(@params.to_json) if @params @headers.each do |key, value| rack_name = key.to_s.upcase.tr('-', '_') env["HTTP_#{rack_name}"] = value end end end