diff options
author | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2010-08-25 22:30:03 +0000 |
---|---|---|
committer | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2010-08-25 22:30:03 +0000 |
commit | 8554e163557a4f32f6e9427146d594df31ac024a (patch) | |
tree | 2f433ca9eb7f177befc9631338f5a13f8bb2900a /test/ruby/test_array.rb | |
parent | 2034fe610fd9da3781f4a1e39079128da812748c (diff) |
* array.c (rb_ary_{shuffle_bang,sample}): use Random class object.
* random.c (try_get_rnd): use default_rand for Random as same as
singleton methods.
* random.c (rb_random_real): check the range of result.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29098 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test/ruby/test_array.rb')
-rw-r--r-- | test/ruby/test_array.rb | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/test/ruby/test_array.rb b/test/ruby/test_array.rb index f95d8870a1..4a8b700c77 100644 --- a/test/ruby/test_array.rb +++ b/test/ruby/test_array.rb @@ -1899,6 +1899,19 @@ class TestArray < Test::Unit::TestCase end end + def test_shuffle_random + cc = nil + gen = proc do + 10000000 + end + class << gen + alias rand call + end + assert_raise(RangeError) { + [*0..2].shuffle(random: gen) + } + end + def test_sample 100.times do assert([0, 1, 2].include?([2, 1, 0].sample)) |