From 590d335720d042fb715d97cb65eed51e14caab64 Mon Sep 17 00:00:00 2001 From: nobu Date: Wed, 26 Aug 2009 14:58:44 +0000 Subject: * random.c (random_rand): fixed for edge cases of ranges. [ruby-dev:39166] git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@24674 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- test/ruby/test_rand.rb | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'test/ruby') diff --git a/test/ruby/test_rand.rb b/test/ruby/test_rand.rb index 446211587..b6563954c 100644 --- a/test/ruby/test_rand.rb +++ b/test/ruby/test_rand.rb @@ -199,6 +199,14 @@ class TestRand < Test::Unit::TestCase assert_raise(ArgumentError, '[ruby-core:24677]') { r.rand(-1) } assert_raise(ArgumentError, '[ruby-core:24677]') { r.rand(-1.0) } assert_raise(ArgumentError, '[ruby-core:24677]') { r.rand(0) } + assert_equal(0, r.rand(1), '[ruby-dev:39166]') + assert_equal(0, r.rand(0...1), '[ruby-dev:39166]') + assert_equal(0, r.rand(0..0), '[ruby-dev:39166]') + assert_equal(0.0, r.rand(0.0..0.0), '[ruby-dev:39166]') + assert_raise(ArgumentError, '[ruby-dev:39166]') { r.rand(0...0) } + assert_raise(ArgumentError, '[ruby-dev:39166]') { r.rand(0..-1) } + assert_raise(ArgumentError, '[ruby-dev:39166]') { r.rand(0.0...0.0) } + assert_raise(ArgumentError, '[ruby-dev:39166]') { r.rand(0.0...-0.1) } end def test_random_seed -- cgit