aboutsummaryrefslogtreecommitdiffstats
path: root/test/test_forwardable.rb
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2015-10-23 22:29:14 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2015-10-23 22:29:14 +0000
commit4e1ee809bbf78dc7edb3350628bf80c3e0133fee (patch)
treedf5b96c7c9c458320915f08540af8341f4442953 /test/test_forwardable.rb
parent92d5da521dc68fc166009ce5796748993375c5f5 (diff)
downloadruby-4e1ee809bbf78dc7edb3350628bf80c3e0133fee.tar.gz
forwardable.rb: full qualify names
* lib/forwardable.rb (def_instance_delegator, def_single_delegator): match backtraces against ::Forwardable in case the target class is a subclass of BasicObject and does not include Kernel. [ruby-core:71176] [Bug #11616] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52259 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test/test_forwardable.rb')
-rw-r--r--test/test_forwardable.rb13
1 files changed, 13 insertions, 0 deletions
diff --git a/test/test_forwardable.rb b/test/test_forwardable.rb
index 9b26019893..6dd015e5a4 100644
--- a/test/test_forwardable.rb
+++ b/test/test_forwardable.rb
@@ -110,6 +110,19 @@ class TestForwardable < Test::Unit::TestCase
assert_not_match(/\/forwardable\.rb/, e.backtrace[0])
end
+ class Foo2 < BasicObject
+ extend ::Forwardable
+
+ def_delegator :bar, :baz
+ end
+
+ def test_basicobject_subclass
+ bug11616 = '[ruby-core:71176] [Bug #11616]'
+ assert_raise_with_message(NameError, /`bar'/, bug11616) {
+ Foo2.new.baz
+ }
+ end
+
private
def forwardable_class(&block)