* test/ruby/test_array.rb: add some tests.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20047 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
mame 2008-10-29 16:46:08 +00:00
parent f27e4c045f
commit 143f059bcd
2 changed files with 34 additions and 1 deletions

View file

@ -1624,4 +1624,33 @@ class TestArray < Test::Unit::TestCase
assert_equal(true, s.tainted?)
assert_equal(true, s.untrusted?)
end
def test_initialize2
a = [1] * 1000
a.instance_eval { initialize }
assert_equal([], a)
end
def test_shift_shared_ary
a = (1..100).to_a
b = []
b.replace(a)
assert_equal((1..10).to_a, a.shift(10))
assert_equal((11..100).to_a, a)
end
def test_replace_shared_ary
a = [1] * 100
b = []
b.replace(a)
a.replace([1, 2, 3])
assert_equal([1, 2, 3], a)
assert_equal([1] * 100, b)
end
def test_fill_negative_length
a = (1..10).to_a
a.fill(:foo, 5, -3)
assert_equal((1..10).to_a, a)
end
end