aboutsummaryrefslogtreecommitdiffstats
path: root/activesupport/test
diff options
context:
space:
mode:
authorJeremy Kemper <jeremy@bitsweat.net>2009-10-14 16:12:19 -0700
committerJeremy Kemper <jeremy@bitsweat.net>2009-10-14 16:12:57 -0700
commit00eb09e016837e361fb9dcf6a46d1715ec59beca (patch)
tree189c39066a1bb552c2d37f3204e3655ae0b13126 /activesupport/test
parentefdc06245470fa7caf2a14f2cb59e8bf8c76de5e (diff)
downloadrails-00eb09e016837e361fb9dcf6a46d1715ec59beca.tar.gz
rails-00eb09e016837e361fb9dcf6a46d1715ec59beca.tar.bz2
rails-00eb09e016837e361fb9dcf6a46d1715ec59beca.zip
Revert "Get AS TestCase off deprecated callbacks"
This reverts commit 29b280666b6a8216a46b8349fa76c85f5b5dcc55.
Diffstat (limited to 'activesupport/test')
-rw-r--r--activesupport/test/test_test.rb52
1 files changed, 52 insertions, 0 deletions
diff --git a/activesupport/test/test_test.rb b/activesupport/test/test_test.rb
index 7a45dab60b..5cbffb81fc 100644
--- a/activesupport/test/test_test.rb
+++ b/activesupport/test/test_test.rb
@@ -95,3 +95,55 @@ end
class AlsoDoingNothingTest < ActiveSupport::TestCase
end
+
+# Setup and teardown callbacks.
+class SetupAndTeardownTest < ActiveSupport::TestCase
+ setup :reset_callback_record, :foo
+ teardown :foo, :sentinel, :foo
+
+ def test_inherited_setup_callbacks
+ assert_equal [:reset_callback_record, :foo], self.class.setup_callback_chain.map(&:method)
+ assert_equal [:foo], @called_back
+ assert_equal [:foo, :sentinel, :foo], self.class.teardown_callback_chain.map(&:method)
+ end
+
+ def setup
+ end
+
+ def teardown
+ end
+
+ protected
+ def reset_callback_record
+ @called_back = []
+ end
+
+ def foo
+ @called_back << :foo
+ end
+
+ def sentinel
+ assert_equal [:foo, :foo], @called_back
+ end
+end
+
+
+class SubclassSetupAndTeardownTest < SetupAndTeardownTest
+ setup :bar
+ teardown :bar
+
+ def test_inherited_setup_callbacks
+ assert_equal [:reset_callback_record, :foo, :bar], self.class.setup_callback_chain.map(&:method)
+ assert_equal [:foo, :bar], @called_back
+ assert_equal [:foo, :sentinel, :foo, :bar], self.class.teardown_callback_chain.map(&:method)
+ end
+
+ protected
+ def bar
+ @called_back << :bar
+ end
+
+ def sentinel
+ assert_equal [:foo, :bar, :bar, :foo], @called_back
+ end
+end