ruby-changes:15111
From: akr <ko1@a...>
Date: Sat, 20 Mar 2010 14:17:30 +0900 (JST)
Subject: [ruby-changes:15111] Ruby:r26988 (trunk): add tests.
akr 2010-03-20 14:17:19 +0900 (Sat, 20 Mar 2010) New Revision: 26988 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=26988 Log: add tests. Modified files: trunk/test/ruby/test_array.rb Index: test/ruby/test_array.rb =================================================================== --- test/ruby/test_array.rb (revision 26987) +++ test/ruby/test_array.rb (revision 26988) @@ -1345,6 +1345,26 @@ assert_equal(@cls[1, 2, 3], @cls[1, 2, 3].uniq) end + def test_uniq_with_block + a = [] + b = a.uniq {|v| v.even? } + assert_equal([], a) + assert_equal([], b) + assert_not_same(a, b) + + a = [1] + b = a.uniq {|v| v.even? } + assert_equal([1], a) + assert_equal([1], b) + assert_not_same(a, b) + + a = [1,3] + b = a.uniq {|v| v.even? } + assert_equal([1,3], a) + assert_equal([1], b) + assert_not_same(a, b) + end + def test_uniq! a = [] b = a.uniq! @@ -1385,6 +1405,27 @@ assert_raise(RuntimeError) { f.uniq! } end + def test_uniq_bang_with_block + a = [] + b = a.uniq! {|v| v.even? } + assert_equal(nil, b) + + a = [1] + b = a.uniq! {|v| v.even? } + assert_equal(nil, b) + + a = [1,3] + b = a.uniq! {|v| v.even? } + assert_equal([1], a) + assert_equal([1], b) + assert_same(a, b) + + a = [1,2] + b = a.uniq! {|v| v.even? } + assert_equal([1,2], a) + assert_equal(nil, b) + end + def test_unshift a = @cls[] assert_equal(@cls['cat'], a.unshift('cat')) -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/