mirror of
https://github.com/ruby/ruby.git
synced 2025-09-22 03:53:58 +02:00
Add out of range tests for Array#slice!
This commit is contained in:
parent
7731be94eb
commit
5dc36ddcd0
1 changed files with 13 additions and 0 deletions
|
@ -1624,6 +1624,19 @@ class TestArray < Test::Unit::TestCase
|
||||||
assert_raise(ArgumentError) { @cls[1].slice!(0, 0, 0) }
|
assert_raise(ArgumentError) { @cls[1].slice!(0, 0, 0) }
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def test_slice_out_of_range!
|
||||||
|
a = @cls[*(1..100).to_a]
|
||||||
|
|
||||||
|
assert_nil(a.clone.slice!(-101..-1))
|
||||||
|
assert_nil(a.clone.slice!(-101..))
|
||||||
|
|
||||||
|
# assert_raise_with_message(RangeError, "((-101..-1).%(2)) out of range") { a.clone.slice!((-101..-1)%2) }
|
||||||
|
# assert_raise_with_message(RangeError, "((-101..).%(2)) out of range") { a.clone.slice!((-101..)%2) }
|
||||||
|
|
||||||
|
assert_nil(a.clone.slice!(10, -3))
|
||||||
|
assert_equal @cls[], a.clone.slice!(10..7)
|
||||||
|
end
|
||||||
|
|
||||||
def test_sort
|
def test_sort
|
||||||
a = @cls[ 4, 1, 2, 3 ]
|
a = @cls[ 4, 1, 2, 3 ]
|
||||||
assert_equal(@cls[1, 2, 3, 4], a.sort)
|
assert_equal(@cls[1, 2, 3, 4], a.sort)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue