diff options
Diffstat (limited to 'test/ruby/test_hash.rb')
-rw-r--r-- | test/ruby/test_hash.rb | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/test/ruby/test_hash.rb b/test/ruby/test_hash.rb index 4c0d556896..82aba92529 100644 --- a/test/ruby/test_hash.rb +++ b/test/ruby/test_hash.rb @@ -373,8 +373,6 @@ class TestHash < Test::Unit::TestCase end def test_fetch - assert_raise(KeyError) { @cls[].fetch(1) } - assert_raise(KeyError) { @h.fetch('gumby') } assert_equal('gumbygumby', @h.fetch('gumby') {|k| k * 2 }) assert_equal('pokey', @h.fetch('gumby', 'pokey')) @@ -383,6 +381,14 @@ class TestHash < Test::Unit::TestCase assert_equal('nil', @h.fetch(nil)) end + def test_fetch_error + assert_raise(KeyError) { @cls[].fetch(1) } + assert_raise(KeyError) { @h.fetch('gumby') } + e = assert_raise(KeyError) { @h.fetch('gumby'*20) } + assert_match(/key not found: "gumbygumby/, e.message) + assert_match(/\.\.\.\z/, e.message) + end + def test_key2? assert(!@cls[].key?(1)) assert(!@cls[].key?(nil)) |