Sha256: 7519f075a9980cf8e444ab6106663a860849b9b4f903ec5590d4e0794b3f37ee
Contents?: true
Size: 1.52 KB
Versions: 1
Compression:
Stored size: 1.52 KB
Contents
module EMHttpRequestSpecHelper def failed EventMachine.stop fail end def http_request(method, uri, options = {}, &block) response = nil error = nil uri = Addressable::URI.heuristic_parse(uri) EventMachine.run { request = EventMachine::HttpRequest.new("#{uri.omit(:userinfo).normalize.to_s}") http = request.send(:setup_request, method, { :timeout => 2, :body => options[:body], :query => options[:query], 'authorization' => [uri.user, uri.password], :head => options[:headers]}, &block) http.errback { error = http.errors failed } headers = {} if http.response_header http.response_header.each do |k,v| v = v.join(", ") if v.is_a?(Array) headers[k] = v end end http.callback { response = OpenStruct.new({ :body => http.response, :headers => WebMock::Util::Headers.normalize_headers(headers), :message => http.response_header.http_reason, :status => http.response_header.status.to_s }) EventMachine.stop } } raise error if error response end def client_timeout_exception_class "WebMock timeout error" end def connection_refused_exception_class "" end def default_client_request_headers(request_method = nil, has_body = false) nil end def setup_expectations_for_real_request(options = {}) end def http_library :em_http_request end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
webmock-1.3.0 | spec/em_http_request_spec_helper.rb |