Skip to content

Instantly share code, notes, and snippets.

@headius
Created January 7, 2014 23:00
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save headius/8308530 to your computer and use it in GitHub Desktop.
Save headius/8308530 to your computer and use it in GitHub Desktop.
tarcieri/http test results under JRuby master for jruby/jruby#1377.
system ~/projects/tarcieri/http $ jruby -G -S rake
/Users/headius/projects/jruby/bin/jruby -S rspec ./spec/http/options/body_spec.rb ./spec/http/options/callbacks_spec.rb ./spec/http/options/form_spec.rb ./spec/http/options/headers_spec.rb ./spec/http/options/merge_spec.rb ./spec/http/options/new_spec.rb ./spec/http/options/proxy_spec.rb ./spec/http/options/response_spec.rb ./spec/http/options_spec.rb ./spec/http/request_spec.rb ./spec/http/request_stream_spec.rb ./spec/http/response_spec.rb ./spec/http_spec.rb
/Users/headius/projects/jruby/lib/ruby/gems/shared/gems/simplecov-html-0.8.0/lib/simplecov-html.rb:58 warning: Useless use of a variable in void context.
/Users/headius/projects/jruby/lib/ruby/shared/krypt/hmac.rb:54 warning: shadowing outer local variable - new_key
/Users/headius/projects/jruby/lib/ruby/shared/krypt/codec/hex.rb:65 warning: shadowing outer local variable - data
/Users/headius/projects/jruby/lib/ruby/shared/krypt/codec/hex.rb:112 warning: shadowing outer local variable - data
/Users/headius/projects/jruby/lib/ruby/shared/krypt/codec/base64.rb:78 warning: shadowing outer local variable - data
/Users/headius/projects/jruby/lib/ruby/shared/krypt/codec/base64.rb:130 warning: shadowing outer local variable - data
/Users/headius/projects/jruby/lib/ruby/gems/shared/gems/simplecov-0.8.2/lib/simplecov.rb:32 warning: tracing (e.g. set_trace_func) will not capture all events without --debug flag
[2014-01-07 16:58:15] INFO WEBrick 1.3.1
[2014-01-07 16:58:15] INFO ruby 2.1.0.dev (2014-01-05) [java]
/Users/headius/projects/jruby/lib/ruby/2.1/socket.rb:208 warning: pass backlog to #bind instead of #listen (http://wiki.jruby.org/ServerSocket)
[2014-01-07 16:58:15] INFO WEBrick::HTTPServer#start: pid=87190 port=65432
[2014-01-07 16:58:15] INFO WEBrick 1.3.1
[2014-01-07 16:58:15] INFO ruby 2.1.0.dev (2014-01-05) [java]
[2014-01-07 16:58:15] INFO WEBrick::HTTPProxyServer#start: pid=87190 port=8080
[2014-01-07 16:58:15] INFO WEBrick 1.3.1
[2014-01-07 16:58:15] INFO ruby 2.1.0.dev (2014-01-05) [java]
[2014-01-07 16:58:15] INFO WEBrick::HTTPProxyServer#start: pid=87190 port=8081
HTTP::Options form
may be specified with with_form_data
defaults to nil
HTTP::Options merge
supports a Hash
merges as excepted in complex cases
supports another Options
HTTP::Request
headers
sets explicit headers
provides a #headers accessor
provides a #__method__ method that delegates to Object#method
sets implicit headers
provides a #verb accessor
provides a #method accessor that outputs a deprecation warning and returns the verb
HTTP::Response
headers
provides a #headers accessor too
exposes header fields for easy access
to_a
on an unregistered MIME type
returns a Rack-like array
on a registered MIME type
retuns a Rack-like array with a parsed response body
#parse_body
on an unregistered MIME type
returns the raw body as a String
on a registered MIME type
returns a parsed response body
HTTP::RequestStream
#initalize
does throw on a body that isn't string, enumerable or nil
doesn't throw on a nil body
doesn't throw on an Enumerable body
doesn't throw on a String body
HTTP::Options proxy
defaults to {}
accepts proxy address, port, username, and password
may be specified with with_proxy
HTTP::Options body
may be specified with with_body
defaults to nil
HTTP::Options
behaves like a Hash for reading
raises ArgumentError with invalid options
it's gois able to coerce to a Hash
HTTP::Options callbacks
recognizes invalid callbacks
recognizes invalid events
response
may be specified with with_callback(:response, ...)
defaults to []
request
may be specified with with_callback(:request, ...)
defaults to []
HTTP
should be chainable
getting resources
should be easy
should not mess with the returned status
should be easy to get a response object
with callbacks
fires a response callback
fires a request callback (PENDING: HTTP::Request is not yet implemented)
with_response
allows specifying :object
with headers
should be easy
with query string parameters
should be easy
with http proxy address and port
should proxy the request
posting with an explicit body
should be easy to post
with http proxy address, port, with wrong username and password
should proxy the request (PENDING: fixing proxy support)
posting to resources
should be easy to post forms
head requests
should be easy
without proxy port
should raise an argument error
with http proxy address, port username and password
should proxy the request
with redirects
should be easy for 302
should be easy for 301
HTTP::Options headers
recognizes invalid headers
defaults to just the user agent
accepts any object that respond to :to_hash
may be specified with with_headers
HTTP::Options new
supports a Options instance
with a Hash
coerces :response correctly
coerces :proxy correctly
coerces :callbacks correctly
coerces :headers correctly
coerces :form correctly
HTTP::Options response
defaults to :auto
recognizes invalid responses
may be specified with with_response
Pending:
HTTP getting resources with callbacks fires a request callback
# HTTP::Request is not yet implemented
# ./spec/http_spec.rb:42
HTTP with http proxy address, port, with wrong username and password should proxy the request
# fixing proxy support
# ./spec/http_spec.rb:81
Finished in 1.1 seconds
66 examples, 0 failures, 2 pending
Randomized with seed 30356
Coverage report generated for RSpec to /Users/headius/projects/tarcieri/http/coverage. 405 / 456 LOC (88.82%) covered.
[Coveralls] Outside the Travis environment, not sending data.
Rubocop is disabled
YARD-Coverage: 55.2% (threshold: 55.2%)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment