class EventMachine::WebMockHttpClient

def build_request_signature

def build_request_signature
  headers, body = headers_and_body_processed_by_middleware
  method = @req.method
  uri = @req.uri.clone
  query = @req.query
  uri.query = encode_query(@req.uri, query).slice(/\?(.*)/, 1)
  body = form_encode_body(body) if body.is_a?(Hash)
  if headers['authorization'] && headers['authorization'].is_a?(Array)
    headers['Authorization'] = WebMock::Util::Headers.basic_auth_header(headers.delete('authorization'))
  end
  WebMock::RequestSignature.new(
    method.downcase.to_sym,
    uri.to_s,
    body: body || (@req.file && File.read(@req.file)),
    headers: headers
  )
end