summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--test/ruby/test_settracefunc.rb8
2 files changed, 11 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index d3ae521aa6..d6fb97c702 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Mon Jun 30 22:57:50 2008 Yusuke Endoh <mame@tsg.ne.jp>
+
+ * test/ruby/test_settracefunc.rb (test_raise): reveal an exception
+ hided by rescue modifier.
+
Mon Jun 30 22:49:32 2008 Yusuke Endoh <mame@tsg.ne.jp>
* test/ruby/test_array.rb (test_aset): access with too big index
diff --git a/test/ruby/test_settracefunc.rb b/test/ruby/test_settracefunc.rb
index 7ef7d3b802..1d280463f6 100644
--- a/test/ruby/test_settracefunc.rb
+++ b/test/ruby/test_settracefunc.rb
@@ -10,6 +10,7 @@ class TestSetTraceFunc < Test::Unit::TestCase
end
def teardown
+ set_trace_func(nil)
RubyVM::InstructionSequence.compile_option = @original_compile_option
end
@@ -134,8 +135,11 @@ class TestSetTraceFunc < Test::Unit::TestCase
1: set_trace_func(Proc.new { |event, file, lineno, mid, binding, klass|
2: events << [event, lineno, mid, klass]
3: })
- 4: raise "error" rescue nil
- 5: set_trace_func(nil)
+ 4: begin
+ 5: raise TypeError, "error"
+ 6: rescue TypeError
+ 7: end
+ 8: set_trace_func(nil)
EOF
assert_equal(["c-return", 3, :set_trace_func, Kernel],
events.shift)