diff options
author | David Heinemeier Hansson <david@loudthinking.com> | 2008-07-16 17:45:28 -0500 |
---|---|---|
committer | David Heinemeier Hansson <david@loudthinking.com> | 2008-07-16 17:45:28 -0500 |
commit | 73ade4fe100ae7f48c5f95dcdf7067f6a0cd51fa (patch) | |
tree | 2f1601292978a844226e16f3cef428ed760b9eb5 /activesupport/test/callbacks_test.rb | |
parent | 8fe01de2e8753d045408ecde3178ab4e9192bf9a (diff) | |
parent | 90c930f45c5c6766306929241462ffff8f67b86e (diff) | |
download | rails-73ade4fe100ae7f48c5f95dcdf7067f6a0cd51fa.tar.gz rails-73ade4fe100ae7f48c5f95dcdf7067f6a0cd51fa.tar.bz2 rails-73ade4fe100ae7f48c5f95dcdf7067f6a0cd51fa.zip |
Resolved conflict
Diffstat (limited to 'activesupport/test/callbacks_test.rb')
-rw-r--r-- | activesupport/test/callbacks_test.rb | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/activesupport/test/callbacks_test.rb b/activesupport/test/callbacks_test.rb index 7f71ca2262..c3f683bdb5 100644 --- a/activesupport/test/callbacks_test.rb +++ b/activesupport/test/callbacks_test.rb @@ -84,6 +84,30 @@ class CallbacksTest < Test::Unit::TestCase end end +class MetaclassCallbacksTest < Test::Unit::TestCase + module ModuleWithCallbacks + def self.extended(object) + object.metaclass.before_save :raise_metaclass_callback_called + end + + def module_callback_called? + @module_callback_called ||= false + end + + def raise_metaclass_callback_called + @module_callback_called = true + end + end + + def test_metaclass_callbacks + person = Person.new + person.extend(ModuleWithCallbacks) + assert !person.module_callback_called? + person.save + assert person.module_callback_called? + end +end + class ConditionalCallbackTest < Test::Unit::TestCase def test_save_conditional_person person = ConditionalPerson.new |