summaryrefslogtreecommitdiff
path: root/test/ruby/test_range.rb
diff options
context:
space:
mode:
authoreregon <eregon@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2017-04-25 11:42:43 +0000
committereregon <eregon@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2017-04-25 11:42:43 +0000
commitead61f4ac85a2bf0fffa436dd034812bbfb5738d (patch)
tree8bd48e8ebc2c1be3254f139d33b1140baf2781c8 /test/ruby/test_range.rb
parent413cece5c94ca0ad400a1276d35680940e612a7d (diff)
no longer rescue exceptions of #<=> when initializing a Range
* range.c (range_init): no longer hide the user exception with a ArgumentError, just let the user exception go through. * test/ruby/test_range.rb (test_new): add tests. [Feature #7688] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58476 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test/ruby/test_range.rb')
-rw-r--r--test/ruby/test_range.rb8
1 files changed, 8 insertions, 0 deletions
diff --git a/test/ruby/test_range.rb b/test/ruby/test_range.rb
index 3743e9dda6..66c4682d8d 100644
--- a/test/ruby/test_range.rb
+++ b/test/ruby/test_range.rb
@@ -9,6 +9,14 @@ class TestRange < Test::Unit::TestCase
assert_equal((0..2), Range.new(0, 2))
assert_equal((0..2), Range.new(0, 2, false))
assert_equal((0...2), Range.new(0, 2, true))
+
+ assert_raise(ArgumentError) { (1.."3") }
+
+ obj = Object.new
+ def obj.<=>(other)
+ raise RuntimeError, "cmp"
+ end
+ assert_raise_with_message(RuntimeError, "cmp") { (obj..3) }
end
def test_frozen_initialize