In Files

Parent

Files

Object

Public Instance Methods

build_request_signature(req) click to toggle source
     # File lib/webmock/http_lib_adapters/httpclient.rb, line 96
 96:   def build_request_signature(req)
 97:     uri = WebMock::Util::URI.heuristic_parse(req.header.request_uri.to_s)
 98:     uri.query_values = req.header.request_query if req.header.request_query
 99:     uri.port = req.header.request_uri.port
100:     uri = uri.omit(:userinfo)
101: 
102:     auth = www_auth.basic_auth
103:     auth.challenge(req.header.request_uri, nil)
104:     
105:     headers = req.header.all.inject({}) do |headers, header| 
106:       headers[header[0]] ||= [];
107:       headers[header[0]] << header[1]
108:       headers
109:     end
110: 
111:     if (auth_cred = auth.get(req)) && auth.scheme == 'Basic'
112:       userinfo = WebMock::Util::Headers.decode_userinfo_from_header(auth_cred)
113:       userinfo = WebMock::Util::URI.encode_unsafe_chars_in_userinfo(userinfo)
114:       headers.reject! {|k,v| k =~ /[Aa]uthorization/ && v =~ /^Basic / } #we added it to url userinfo
115:       uri.userinfo = userinfo
116:     end
117: 
118:     request_signature = WebMock::RequestSignature.new(
119:       req.header.request_method.downcase.to_sym,
120:       uri.to_s,
121:       :body => req.body.content,
122:       :headers => headers
123:     )
124:   end
build_webmock_response(httpclient_response) click to toggle source
    # File lib/webmock/http_lib_adapters/httpclient.rb, line 81
81:   def build_webmock_response(httpclient_response)
82:     webmock_response = WebMock::Response.new
83:     webmock_response.status = [httpclient_response.status, httpclient_response.reason]
84:     webmock_response.headers = httpclient_response.header.all
85:     if  httpclient_response.content.respond_to?(:read)
86:       webmock_response.body = httpclient_response.content.read
87:       body = HTTP::Message::Body.new
88:       body.init_response(StringIO.new(webmock_response.body))
89:       httpclient_response.body = body
90:     else
91:       webmock_response.body = httpclient_response.content
92:     end
93:     webmock_response
94:   end

Disabled; run with --debug to generate this.

[Validate]

Generated with the Darkfish Rdoc Generator 1.1.6.