diff options
author | Kris Kemper <kriskemper@gmail.com> | 2014-03-23 08:32:37 -0400 |
---|---|---|
committer | Aaron Patterson <aaron.patterson@gmail.com> | 2014-05-22 14:09:47 -0700 |
commit | a2f13e15f324756fe55f4876184756d7e6c995b8 (patch) | |
tree | 1b98b292b5f8639d54f65fc6eed41e5bf1ac6a58 /activerecord/test/cases | |
parent | b318758bda9f9ea9c94abb81e8a66a8b48cb720c (diff) | |
download | rails-a2f13e15f324756fe55f4876184756d7e6c995b8.tar.gz rails-a2f13e15f324756fe55f4876184756d7e6c995b8.tar.bz2 rails-a2f13e15f324756fe55f4876184756d7e6c995b8.zip |
Don't recurse infinitely when calling non-existent method on super
Diffstat (limited to 'activerecord/test/cases')
-rw-r--r-- | activerecord/test/cases/attribute_methods_test.rb | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/activerecord/test/cases/attribute_methods_test.rb b/activerecord/test/cases/attribute_methods_test.rb index 495b43c9e5..4c96c2f4fd 100644 --- a/activerecord/test/cases/attribute_methods_test.rb +++ b/activerecord/test/cases/attribute_methods_test.rb @@ -843,6 +843,18 @@ class AttributeMethodsTest < ActiveRecord::TestCase assert_equal !real_topic.title?, klass.find(real_topic.id).title? end + def test_calling_super_when_parent_does_not_define_method_raises_error + klass = new_topic_like_ar_class do + def some_method_that_is_not_on_super + super + end + end + + assert_raise(NoMethodError) do + klass.new.some_method_that_is_not_on_super + end + end + private def new_topic_like_ar_class(&block) |