Public Class methods
new(*)
[show source]
# File lib/httpx/adapters/webmock.rb 100 def initialize(*) 101 super 102 @mocked = true 103 end
Public Instance methods
interests()
[show source]
# File lib/httpx/adapters/webmock.rb 111 def interests 112 return if @mocked 113 114 super 115 end
open?()
[show source]
# File lib/httpx/adapters/webmock.rb 105 def open? 106 return true if @mocked 107 108 super 109 end
send(request)
[show source]
# File lib/httpx/adapters/webmock.rb 121 def send(request) 122 request_signature = Plugin.build_webmock_request_signature(request) 123 WebMock::RequestRegistry.instance.requested_signatures.put(request_signature) 124 125 if (mock_response = WebMock::StubRegistry.instance.response_for_request(request_signature)) 126 response = Plugin.build_from_webmock_response(request, mock_response) 127 WebMock::CallbackRegistry.invoke_callbacks({ lib: :httpx }, request_signature, mock_response) 128 log { "mocking #{request.uri} with #{mock_response.inspect}" } 129 request.transition(:headers) 130 request.transition(:body) 131 request.transition(:trailers) 132 request.transition(:done) 133 response.finish! 134 request.response = response 135 request.emit(:response, response) 136 request_signature.headers = request.headers.to_h 137 138 response << mock_response.body.dup unless response.is_a?(HTTPX::ErrorResponse) 139 elsif WebMock.net_connect_allowed?(request_signature.uri) 140 if WebMock::CallbackRegistry.any_callbacks? 141 request.on(:response) do |resp| 142 unless resp.is_a?(HTTPX::ErrorResponse) 143 webmock_response = Plugin.build_webmock_response(request, resp) 144 WebMock::CallbackRegistry.invoke_callbacks( 145 { lib: :httpx, real_request: true }, request_signature, 146 webmock_response 147 ) 148 end 149 end 150 end 151 @mocked = false 152 emit(:unmock_connection, self) 153 super 154 else 155 raise WebMock::NetConnectNotAllowedError, request_signature 156 end 157 end
terminate()
[show source]
# File lib/httpx/adapters/webmock.rb 117 def terminate 118 force_reset 119 end