diff options
Diffstat (limited to 'bootstraptest')
-rw-r--r-- | bootstraptest/test_eval.rb | 46 | ||||
-rw-r--r-- | bootstraptest/test_knownbug.rb | 10 |
2 files changed, 46 insertions, 10 deletions
diff --git a/bootstraptest/test_eval.rb b/bootstraptest/test_eval.rb index 339e763f46..4c8e5aaa09 100644 --- a/bootstraptest/test_eval.rb +++ b/bootstraptest/test_eval.rb @@ -236,3 +236,49 @@ assert_equal 'ok', %q{ :ok end } + +assert_equal 'ok', %q{ + begin + 0.instance_eval { def m() :m end } + 1.m + :ng + rescue Exception + :ok + end +}, '[ruby-dev:34579]' + +assert_equal 'ok', %q{ + begin + 12.instance_eval { @@a } + rescue NameError + :ok + end +}, '[ruby-core:16794]' + +assert_equal 'ok', %q{ + begin + 12.instance_exec { @@a } + rescue NameError + :ok + end +}, '[ruby-core:16794]' + +assert_equal 'ok', %q{ + begin + nil.instance_eval { + def a() :a end + } + rescue => TypeError + :ok + end +}, '[ruby-core:16796]' + +assert_equal 'ok', %q{ + begin + nil.instance_exec { + def a() :a end + } + rescue => TypeError + :ok + end +}, '[ruby-core:16796]' diff --git a/bootstraptest/test_knownbug.rb b/bootstraptest/test_knownbug.rb index 9f1bbc8a4d..5fb6136508 100644 --- a/bootstraptest/test_knownbug.rb +++ b/bootstraptest/test_knownbug.rb @@ -91,16 +91,6 @@ assert_equal 'ok', %q{ }.call }, '[ruby-dev:34646]' -assert_equal 'ok', %q{ - begin - 0.instance_eval { def m() :m end } - 1.m - :ng - rescue Exception - :ok - end -}, '[ruby-dev:34579]' - assert_normal_exit %q{ eval("", method(:proc).call {}.binding) } |