summaryrefslogtreecommitdiff
path: root/test/ruby/test_range.rb
diff options
context:
space:
mode:
authorKouhei Yanagita <[email protected]>2023-10-05 00:19:55 +0900
committerGitHub <[email protected]>2023-10-05 00:19:55 +0900
commit6ae2996e291750bab4ff59a06ba11c8d6bbe5aaa (patch)
tree764f5d10e70c59757ef108f3e1dc741d30d7042e /test/ruby/test_range.rb
parente0c66b47499e9372fdf86610f0da65efb6f60af9 (diff)
Optimize `Range#count` by using `range_size` if possible
Diffstat (limited to 'test/ruby/test_range.rb')
-rw-r--r--test/ruby/test_range.rb10
1 files changed, 10 insertions, 0 deletions
diff --git a/test/ruby/test_range.rb b/test/ruby/test_range.rb
index 4d2b6294ed..a09108f806 100644
--- a/test/ruby/test_range.rb
+++ b/test/ruby/test_range.rb
@@ -1075,7 +1075,17 @@ class TestRange < Test::Unit::TestCase
end
def test_count
+ assert_equal 42, (1..42).count
+ assert_equal 41, (1...42).count
+ assert_equal 0, (42..1).count
+ assert_equal 0, (42...1).count
+ assert_equal 2**100, (1..2**100).count
+ assert_equal 6, (1...6.3).count
+ assert_equal 4, ('a'..'d').count
+ assert_equal 3, ('a'...'d').count
+
assert_equal(Float::INFINITY, (1..).count)
+ assert_equal(Float::INFINITY, (..1).count)
end
def test_overlap?