diff options
| author | Kouhei Yanagita <yanagi@shakenbu.org> | 2023-09-19 15:29:35 +0900 |
|---|---|---|
| committer | Nobuyoshi Nakada <nobu@ruby-lang.org> | 2023-09-21 10:30:58 +0900 |
| commit | 7e350f53107533856b0a87c26e5a1e5505ea5d59 (patch) | |
| tree | e524ab366c7203fd90474123a8c385b826eb6a7b /test/ruby | |
| parent | ab637cad2b582e8247bafd87a3b0f6323d564f64 (diff) | |
Optimize Range#bsearch for beginless/endless ranges within Fixnum
Diffstat (limited to 'test/ruby')
| -rw-r--r-- | test/ruby/test_range.rb | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/test/ruby/test_range.rb b/test/ruby/test_range.rb index 8c310b0bae..4d2b6294ed 100644 --- a/test/ruby/test_range.rb +++ b/test/ruby/test_range.rb @@ -1047,7 +1047,10 @@ class TestRange < Test::Unit::TestCase assert_equal(nil, (bignum...bignum+ary.size).bsearch {|i| ary[i - bignum] >= 100 }) assert_equal(bignum + 0, (bignum...bignum+ary.size).bsearch {|i| true }) assert_equal(nil, (bignum...bignum+ary.size).bsearch {|i| false }) + + assert_equal(bignum * 2 + 1, (0...).bsearch {|i| i > bignum * 2 }) assert_equal(bignum * 2 + 1, (bignum...).bsearch {|i| i > bignum * 2 }) + assert_equal(-bignum * 2 + 1, (...0).bsearch {|i| i > -bignum * 2 }) assert_equal(-bignum * 2 + 1, (...-bignum).bsearch {|i| i > -bignum * 2 }) assert_raise(TypeError) { ("a".."z").bsearch {} } |
