1
0
Fork 0
mirror of https://github.com/rest-client/rest-client.git synced 2022-11-09 13:49:40 -05:00
Commit graph

11 commits

Author SHA1 Message Date
Andy Brody
e85a954ed8 Remove args from Response and normalize method.
It is redundant and confusing to pass both the Request args and the
Request when creating a RestClient::Response. Instead, when the response
object needs to read args from the request, access them on the request
object itself. For determining the HTTP method of the request, switch to
calling RestClient::Request#method.

Also normalize the Request#method to be a lowercase string. This makes
handling of redirection and other method-specific functionality actually
work regardless of how the method was provided to Request.new (:get,
'GET', 'get').

Fixes: #461
Fixes: #462
Fixes: #463
2016-05-01 16:57:54 -04:00
Andy Brody
5e5fcd9580 Store redirection history on reqs/responses.
This allows callers to actually determine whether a given request
followed redirection, and if so, what the original responses to each
intermediate request were.

Due to the way the code is organized, the simplest way to achieve this
involves storing the history on request objects as well. This isn't
ideal, but will work for now.
2015-04-15 15:14:29 -07:00
Andy Brody
38afe2c895 Refactor redirection handling.
- Remove MaxRedirectsReached, instead raise the normal
  ExceptionWithResponse subclasses.
- Handle max_redirects < 0.
- Remove unnecessary arguments to AbstractResponse#return! and
  #follow_redirection.
- Generally clean up the redirection code to be somewhat saner.
2015-04-15 13:03:02 -07:00
Andy Brody
2e0649f403 Add tests for new header multi value handling. 2015-03-23 21:55:40 -07:00
Andy Brody
6c6b8f2fc0 Merge pull request #365 from rest-client/ab-cookies
Add standards-compliant cookie handling.

Merge branch 'ab-cookies' into 2.0.x

Conflicts:
	history.md
	lib/restclient/abstract_response.rb
	lib/restclient/response.rb
	lib/restclient/version.rb
	spec/unit/request_spec.rb
	spec/unit/response_spec.rb
2015-03-22 17:54:14 -07:00
Andy Brody
c215b22bdb Fix up cookie redirect functionality and tests.
- Store the request object on responses. We need this in order to be
  able to correctly process the cookie jar with the right request URI.
- Fix tests that rely on the old broken Set-Cookie processing code.
- Add test that cookies are not passed across domains on redirect.
2015-03-21 19:14:51 -07:00
Andy Brody
23210393bb Warn when to_i is called on response objects. 2015-03-14 15:58:08 -07:00
Andy Brody
1907f03c22 Merge remote-tracking branch 'godfat/no-to_i'
Conflicts:
	spec/unit/response_spec.rb
2015-03-14 15:36:40 -07:00
Andy Brody
5ce0c6ebde Fix up tests for encoding changes.
Add a `.to_hash => {}` for the Net HTTP response mocks.
2015-03-13 18:00:51 -07:00
Andy Brody
543dbc3816 Fix a large number of style nits.
Working slowly through the rubocop list.
2014-07-08 03:54:01 -07:00
Larry Gilbert
d7a11503af Reorganize specs
* Put unit and integration specs into separate subdirectories
* Consolidate all requires of 'webmock/rspec' into spec_helper.rb
* Use WebMock.{disable!,enable!} for specs calling live server
2013-08-30 18:45:06 -07:00
Renamed from spec/response_spec.rb (Browse further)