aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/test
diff options
context:
space:
mode:
authorGrey Baker <greysteil@gmail.com>2014-07-13 17:58:20 +0100
committerGrey Baker <greysteil@gmail.com>2014-07-14 11:55:44 +0100
commitf49d20ef36c2d339e7a988fdc52981cdb95af22f (patch)
tree821229483a98c8104aef5292cc89e18563d83873 /actionpack/test
parentccac6082bd4265f4827cc8bf9748c983d0a1c6c6 (diff)
downloadrails-f49d20ef36c2d339e7a988fdc52981cdb95af22f.tar.gz
rails-f49d20ef36c2d339e7a988fdc52981cdb95af22f.tar.bz2
rails-f49d20ef36c2d339e7a988fdc52981cdb95af22f.zip
Stash original path in `ShowExceptions` middleware
`ActionDispatch::ShowExceptions` overwrites `PATH_INFO` with the status code for the exception defined in `ExceptionWrapper`, so the path the user was visiting when an exception occurred was not previously available to any custom exceptions_app. The original `PATH_INFO` is now stashed in `env["action_dispatch.original_path"]`.
Diffstat (limited to 'actionpack/test')
-rw-r--r--actionpack/test/dispatch/show_exceptions_test.rb3
1 files changed, 2 insertions, 1 deletions
diff --git a/actionpack/test/dispatch/show_exceptions_test.rb b/actionpack/test/dispatch/show_exceptions_test.rb
index 38bd234f37..323fbc285e 100644
--- a/actionpack/test/dispatch/show_exceptions_test.rb
+++ b/actionpack/test/dispatch/show_exceptions_test.rb
@@ -37,7 +37,7 @@ class ShowExceptionsTest < ActionDispatch::IntegrationTest
get "/", {}, {'action_dispatch.show_exceptions' => true}
assert_response 500
assert_equal "500 error fixture\n", body
-
+
get "/bad_params", {}, {'action_dispatch.show_exceptions' => true}
assert_response 400
assert_equal "400 error fixture\n", body
@@ -92,6 +92,7 @@ class ShowExceptionsTest < ActionDispatch::IntegrationTest
exceptions_app = lambda do |env|
assert_kind_of AbstractController::ActionNotFound, env["action_dispatch.exception"]
assert_equal "/404", env["PATH_INFO"]
+ assert_equal "/not_found_original_exception", env["action_dispatch.original_path"]
[404, { "Content-Type" => "text/plain" }, ["YOU FAILED BRO"]]
end