Class: EacEnvs::Http::Rspec::EchoServer::RequestProcessor

Inherits:
Object
  • Object
show all
Defined in:
lib/eac_envs/http/rspec/echo_server/request_processor.rb

Constant Summary collapse

REQUEST_TO_DATA =
{
  ssl: :ssl?,
  method: :request_method,
  uri: :unparsed_uri,
  body: :body
}.freeze

Instance Method Summary collapse

Instance Method Details

#performObject



21
22
23
24
25
# File 'lib/eac_envs/http/rspec/echo_server/request_processor.rb', line 21

def perform
  response.body = response_body
  response.header['Content-type'] = 'application/json'
  response.status = 200
end

#request_dataObject



27
28
29
# File 'lib/eac_envs/http/rspec/echo_server/request_processor.rb', line 27

def request_data
  REQUEST_TO_DATA.transform_values { |v| request.send(v) }.merge(headers: request_headers)
end

#request_headersObject



31
32
33
# File 'lib/eac_envs/http/rspec/echo_server/request_processor.rb', line 31

def request_headers
  request.header.transform_values(&:first)
end

#response_bodyObject



35
36
37
# File 'lib/eac_envs/http/rspec/echo_server/request_processor.rb', line 35

def response_body
  ::JSON.generate(request_data)
end