mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
98932f5150
* eval.c (rb_ensure): preserve errinfo accross ensure proc before JUMP_TAG(). [ruby-core:52022] [Bug #7802] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39156 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
32 lines
652 B
Ruby
32 lines
652 B
Ruby
require 'test/unit'
|
|
require_relative '../../ruby/envutil'
|
|
|
|
module Bug
|
|
class Bug7802 < RuntimeError
|
|
end
|
|
|
|
class TestException < Test::Unit::TestCase
|
|
def test_ensured
|
|
assert_separately([], <<-'end;') # do
|
|
|
|
require '-test-/exception'
|
|
|
|
module Bug
|
|
class Bug7802 < RuntimeError
|
|
def try_method
|
|
raise self
|
|
end
|
|
|
|
def ensured_method
|
|
[1].detect {|i| true}
|
|
end
|
|
end
|
|
end
|
|
|
|
assert_raise(Bug::Bug7802, '[ruby-core:52022] [Bug #7802]') {
|
|
Bug::Exception.ensured(Bug::Bug7802.new)
|
|
}
|
|
end;
|
|
end
|
|
end
|
|
end
|