aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/test
diff options
context:
space:
mode:
authorBrian John <brian@brianjohn.com>2012-07-18 19:50:25 -0500
committerBrian John <brian@brianjohn.com>2012-07-20 05:49:45 -0500
commit35fe3107a39271c9694e5094c1352c30463582e4 (patch)
tree08a0272b95f17c9a3036f54badc7d8e12e050ec8 /actionpack/test
parente482100d6ed022d00ba31c6c4377f6f947173337 (diff)
downloadrails-35fe3107a39271c9694e5094c1352c30463582e4.tar.gz
rails-35fe3107a39271c9694e5094c1352c30463582e4.tar.bz2
rails-35fe3107a39271c9694e5094c1352c30463582e4.zip
Clean up Sweeper controller accessor when an Error is raised
Diffstat (limited to 'actionpack/test')
-rw-r--r--actionpack/test/controller/filters_test.rb11
1 files changed, 11 insertions, 0 deletions
diff --git a/actionpack/test/controller/filters_test.rb b/actionpack/test/controller/filters_test.rb
index b9cb93f0f4..afc00a3c9d 100644
--- a/actionpack/test/controller/filters_test.rb
+++ b/actionpack/test/controller/filters_test.rb
@@ -505,6 +505,10 @@ class FilterTest < ActionController::TestCase
def show
render :text => 'hello world'
end
+
+ def error
+ raise StandardError.new
+ end
end
class ImplicitActionsController < ActionController::Base
@@ -534,6 +538,13 @@ class FilterTest < ActionController::TestCase
assert_equal 'hello world', response.body
end
+ def test_sweeper_should_clean_up_if_exception_is_raised
+ assert_raise StandardError do
+ test_process(SweeperTestController, 'error')
+ end
+ assert_nil AppSweeper.instance.controller
+ end
+
def test_before_method_of_sweeper_should_always_return_true
sweeper = ActionController::Caching::Sweeper.send(:new)
assert sweeper.before(TestController.new)