Class: Net::HTTP
- Inherits:
-
Object
- Object
- Net::HTTP
- Defined in:
- lib/fake_web/ext/net_http.rb
Class Method Summary collapse
Instance Method Summary collapse
- #after_unhandled_request(uri, request, response, response_buffer) ⇒ Object
- #connect ⇒ Object
- #connect_without_fakeweb ⇒ Object
- #request(request, body = nil, &block) ⇒ Object
- #request_without_fakeweb ⇒ Object
Class Method Details
.socket_type ⇒ Object
41 42 43 |
# File 'lib/fake_web/ext/net_http.rb', line 41 def socket_type FakeWeb::StubSocket end |
.socket_type_without_fakeweb ⇒ Object
40 |
# File 'lib/fake_web/ext/net_http.rb', line 40 alias socket_type_without_fakeweb socket_type |
Instance Method Details
#after_unhandled_request(uri, request, response, response_buffer) ⇒ Object
80 81 |
# File 'lib/fake_web/ext/net_http.rb', line 80 def after_unhandled_request(uri, request, response, response_buffer) end |
#connect ⇒ Object
77 78 |
# File 'lib/fake_web/ext/net_http.rb', line 77 def connect end |
#connect_without_fakeweb ⇒ Object
76 |
# File 'lib/fake_web/ext/net_http.rb', line 76 alias connect_without_fakeweb connect |
#request(request, body = nil, &block) ⇒ Object
47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 |
# File 'lib/fake_web/ext/net_http.rb', line 47 def request(request, body = nil, &block) protocol = use_ssl? ? "https" : "http" path = request.path path = URI.parse(request.path).request_uri if request.path =~ /^http/ if request["authorization"] =~ /^Basic / userinfo = request["authorization"].sub(/^Basic /, "").unpack("m").first + "@" else userinfo = "" end uri = "#{protocol}://#{userinfo}#{self.address}:#{self.port}#{path}" method = request.method.downcase.to_sym if FakeWeb.registered_uri?(method, uri) @socket = Net::HTTP.socket_type.new FakeWeb.response_for(method, uri, &block) elsif FakeWeb.allow_net_connect? connect_without_fakeweb res = request_without_fakeweb(request, body, &block) after_unhandled_request(uri, request, res, @socket && @socket.full_rbuf) res else raise FakeWeb::NetConnectNotAllowedError, "Real HTTP connections are disabled. Unregistered request: #{request.method} #{uri}" end end |
#request_without_fakeweb ⇒ Object
46 |
# File 'lib/fake_web/ext/net_http.rb', line 46 alias request_without_fakeweb request |