aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test/cases/attribute_methods_test.rb
diff options
context:
space:
mode:
authorKris Kemper <kriskemper@gmail.com>2014-03-23 08:32:37 -0400
committerAaron Patterson <aaron.patterson@gmail.com>2014-05-22 14:09:47 -0700
commita2f13e15f324756fe55f4876184756d7e6c995b8 (patch)
tree1b98b292b5f8639d54f65fc6eed41e5bf1ac6a58 /activerecord/test/cases/attribute_methods_test.rb
parentb318758bda9f9ea9c94abb81e8a66a8b48cb720c (diff)
downloadrails-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/attribute_methods_test.rb')
-rw-r--r--activerecord/test/cases/attribute_methods_test.rb12
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)