1
0
Fork 0
mirror of https://github.com/rails/rails.git synced 2022-11-09 12:12:34 -05:00
rails--rails/actionpack/lib/action_dispatch/testing/test_response.rb
Kasper Timm Hansen da1fbb9a00 Add fixes accidentally removed.
Yesterday, when improving how `parsed_body` extracted a parser I wrote
77bbf1e. Then I thought that was too many changes in one commit
and broke it up locally... or so I thought.

When pushed the extra commits removed the changes! Wups!

In shame, lob those changes together here:

  * 3b94c38 which meant to fix the CHANGELOG syntax error.
  * 5007df5 which meant to mention `parsed_body` in the docs.
  * 036a7a0 which meant to memoize the `parsed_body`.
2016-02-12 20:13:48 +01:00

28 lines
845 B
Ruby

module ActionDispatch
# Integration test methods such as ActionDispatch::Integration::Session#get
# and ActionDispatch::Integration::Session#post return objects of class
# TestResponse, which represent the HTTP response results of the requested
# controller actions.
#
# See Response for more information on controller response objects.
class TestResponse < Response
def self.from_response(response)
new response.status, response.headers, response.body
end
# Was the response successful?
alias_method :success?, :successful?
# Was the URL not found?
alias_method :missing?, :not_found?
# Was there a server-side error?
alias_method :error?, :server_error?
attr_writer :response_parser # :nodoc:
def parsed_body
@parsed_body ||= @response_parser.call(body)
end
end
end