diff --git a/test/ruby/test_method.rb b/test/ruby/test_method.rb index c649220..b9709cd 100644 --- a/test/ruby/test_method.rb +++ b/test/ruby/test_method.rb @@ -661,6 +661,11 @@ class TestMethod < Test::Unit::TestCase end end + def interal_test_dir(&block) + ret = block.binding.eval( '[ __FILE__, __dir__ ]' ) + assert_equal("bill", __dir__) + end + def test___dir__ assert_instance_of String, __dir__ assert_equal(File.dirname(File.realpath(__FILE__)), __dir__) @@ -669,6 +674,8 @@ class TestMethod < Test::Unit::TestCase bug8662 = '[ruby-core:56099] [Bug #8662]' assert_equal("arbitrary", eval("__dir__", binding, "arbitrary/file.rb"), bug8662) assert_equal("arbitrary", Object.new.instance_eval("__dir__", "arbitrary/file.rb"), bug8662) + ret = interal_test_dir { } + assert_equal(File.dirname(ret[0], ret[1])) end def test_alias_owner