diff options
author | thoefer <mail@tomhoefer.de> | 2011-08-01 11:28:31 +0200 |
---|---|---|
committer | José Valim <jose.valim@gmail.com> | 2011-08-01 11:49:24 +0200 |
commit | 860202e8b2e3579402d48d7e56fa738a9529a340 (patch) | |
tree | 7a0f6e7cca0f6b8e87e8fc7bab93cc1673680b1a /actionpack/lib | |
parent | dc8773b19f61af2ba818d66923fc65e17bad6c20 (diff) | |
download | rails-860202e8b2e3579402d48d7e56fa738a9529a340.tar.gz rails-860202e8b2e3579402d48d7e56fa738a9529a340.tar.bz2 rails-860202e8b2e3579402d48d7e56fa738a9529a340.zip |
Fix the issue where default_url_options is being cached on test cases. Closes #1872. Closes #2031.
Signed-off-by: José Valim <jose.valim@gmail.com>
Diffstat (limited to 'actionpack/lib')
-rw-r--r-- | actionpack/lib/action_controller/metal/testing.rb | 5 | ||||
-rw-r--r-- | actionpack/lib/action_controller/test_case.rb | 1 |
2 files changed, 6 insertions, 0 deletions
diff --git a/actionpack/lib/action_controller/metal/testing.rb b/actionpack/lib/action_controller/metal/testing.rb index f4efeb33ba..d1813ee745 100644 --- a/actionpack/lib/action_controller/metal/testing.rb +++ b/actionpack/lib/action_controller/metal/testing.rb @@ -4,6 +4,11 @@ module ActionController include RackDelegation + def recycle! + @_url_options = nil + end + + # TODO: Clean this up def process_with_new_base_test(request, response) @_request = request diff --git a/actionpack/lib/action_controller/test_case.rb b/actionpack/lib/action_controller/test_case.rb index 45bb641aee..c8cf04bb69 100644 --- a/actionpack/lib/action_controller/test_case.rb +++ b/actionpack/lib/action_controller/test_case.rb @@ -450,6 +450,7 @@ module ActionController @controller.params.merge!(parameters) build_request_uri(action, parameters) @controller.class.class_eval { include Testing } + @controller.recycle! @controller.process_with_new_base_test(@request, @response) @assigns = @controller.respond_to?(:view_assigns) ? @controller.view_assigns : {} @request.session.delete('flash') if @request.session['flash'].blank? |