aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/lib
diff options
context:
space:
mode:
authorEugene Kenny <elkenny@gmail.com>2018-05-01 01:24:32 +0100
committerEugene Kenny <elkenny@gmail.com>2018-05-01 01:24:32 +0100
commitf9e14b02c460a1963b350fb5e0e10c0e71ee175c (patch)
treeeec10e9821b317de47cf686127a589ccb11a801c /actionpack/lib
parentee6a431bb9071151d9d546856a6451b861907202 (diff)
downloadrails-f9e14b02c460a1963b350fb5e0e10c0e71ee175c.tar.gz
rails-f9e14b02c460a1963b350fb5e0e10c0e71ee175c.tar.bz2
rails-f9e14b02c460a1963b350fb5e0e10c0e71ee175c.zip
Reset CONTENT_LENGTH between test requests
If a POST request is followed by a GET request in a controller test, the `rack.input` and `RAW_POST_DATA` headers from the first request will be reset but the `CONTENT_LENGTH` header will leak, leading the request object in the second request to incorrectly believe it has a body.
Diffstat (limited to 'actionpack/lib')
-rw-r--r--actionpack/lib/action_controller/test_case.rb1
1 files changed, 1 insertions, 0 deletions
diff --git a/actionpack/lib/action_controller/test_case.rb b/actionpack/lib/action_controller/test_case.rb
index 8f2a7e2b5f..5d784ceb31 100644
--- a/actionpack/lib/action_controller/test_case.rb
+++ b/actionpack/lib/action_controller/test_case.rb
@@ -604,6 +604,7 @@ module ActionController
env.delete "action_dispatch.request.query_parameters"
env.delete "action_dispatch.request.request_parameters"
env["rack.input"] = StringIO.new
+ env.delete "CONTENT_LENGTH"
env.delete "RAW_POST_DATA"
env
end