Class: HTTP::Request

Inherits:
Object
  • Object
show all
Defined in:
lib/webmock/http_lib_adapters/http_rb/request.rb

Instance Method Summary collapse

Instance Method Details

#webmock_signatureObject



5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'lib/webmock/http_lib_adapters/http_rb/request.rb', line 5

def webmock_signature
  request_body = nil

  if defined?(HTTP::Request::Body)
    request_body = String.new
    first_chunk_encoding = nil
    body.each do |part|
      request_body << part
      first_chunk_encoding ||= part.encoding
    end

    request_body.force_encoding(first_chunk_encoding) if first_chunk_encoding
    request_body
  else
    request_body = body
  end

  ::WebMock::RequestSignature.new(verb, uri.to_s, {
    headers: headers.to_h,
    body: request_body
  })
end