diff options
Diffstat (limited to 'test/ruby/test_comparable.rb')
-rw-r--r-- | test/ruby/test_comparable.rb | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/test/ruby/test_comparable.rb b/test/ruby/test_comparable.rb index efa630f8d9..dab6be5b27 100644 --- a/test/ruby/test_comparable.rb +++ b/test/ruby/test_comparable.rb @@ -17,12 +17,18 @@ class TestComparable < Test::Unit::TestCase assert_equal(true, @o == nil) cmp->(x) do 1; end assert_equal(false, @o == nil) + cmp->(x) do nil; end + assert_equal(false, @o == nil) + cmp->(x) do raise NotImplementedError, "Not a RuntimeError" end assert_raise(NotImplementedError) { @o == nil } - bug7688 = '[ruby-core:51389] [Bug #7688]' - cmp->(x) do raise StandardError, "A standard error should be rescued"; end - warn = /Comparable#== will no more rescue exceptions .+ in the next release/ - assert_warn(warn, bug7688) { @o == nil } + + bug7688 = 'Comparable#== should not silently rescue' \ + 'any Exception [ruby-core:51389] [Bug #7688]' + cmp->(x) do raise StandardError end + assert_raise(StandardError, bug7688) { @o == nil } + cmp->(x) do "bad value"; end + assert_raise(ArgumentError, bug7688) { @o == nil } end def test_gt |