mirror of
https://github.com/mruby/mruby
synced 2026-06-08 16:11:16 +00:00
mruby-range-ext: add tests for Range#overlap?
This commit is contained in:
@@ -178,3 +178,37 @@ assert('Range#min given a block') do
|
||||
assert_equal nil, ((100..10).min { |x, y| x <=> y })
|
||||
assert_equal nil, ((5...5).min { |x, y| x <=> y })
|
||||
end
|
||||
|
||||
assert('Range#overlap?') do
|
||||
assert_false((0..2).overlap?(-2..-1))
|
||||
assert_false((0..2).overlap?(-2...0))
|
||||
assert_true((0..2).overlap?(-1..0))
|
||||
assert_true((0..2).overlap?(1..2))
|
||||
assert_true((0..2).overlap?(2..3))
|
||||
assert_false((0..2).overlap?(3...4))
|
||||
assert_false((0...2).overlap?(2..3))
|
||||
|
||||
assert_true((..0).overlap?(-1..0))
|
||||
assert_true((...0).overlap?(-1..0))
|
||||
assert_true((..0).overlap?(0..1))
|
||||
assert_true((..0).overlap?(..1))
|
||||
assert_false((..0).overlap?(1..2))
|
||||
assert_false((...0).overlap?(0..1))
|
||||
|
||||
assert_false((0..).overlap?(-2..-1))
|
||||
assert_false((0..).overlap?(...0))
|
||||
assert_true((0..).overlap?(..0))
|
||||
assert_true((0..).overlap?(0..1))
|
||||
assert_true((0..).overlap?(1..2))
|
||||
assert_true((0..).overlap?(-1..0))
|
||||
assert_true((0..).overlap?(1..))
|
||||
|
||||
assert_true((0..).overlap?(-1..0))
|
||||
assert_true((0..).overlap?(..0))
|
||||
assert_true((0..).overlap?(0..1))
|
||||
assert_true((0..).overlap?(1..2))
|
||||
assert_true((0..).overlap?(1..))
|
||||
|
||||
assert_raise(TypeError) { (0..).overlap?(1) }
|
||||
assert_raise(TypeError) { (0..).overlap?(nil) }
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user