From 38656e24bea4a6ced1ebc18a0178bf8c1b175ca7 Mon Sep 17 00:00:00 2001 From: nobu Date: Sat, 3 May 2014 05:28:46 +0000 Subject: math.c: check domain of base argument * math.c (math_log): check domain of base argument too. raises Math::DomainError instead of returning NaN if the base is less than 0, and returns NaN instead of -infinity if both of two arguments are 0. [ruby-core:62309] [Bug #9797] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45795 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- test/ruby/test_math.rb | 2 ++ 1 file changed, 2 insertions(+) (limited to 'test/ruby/test_math.rb') diff --git a/test/ruby/test_math.rb b/test/ruby/test_math.rb index 74b3940c1d..3383079cc7 100644 --- a/test/ruby/test_math.rb +++ b/test/ruby/test_math.rb @@ -142,6 +142,8 @@ class TestMath < Test::Unit::TestCase assert_nothing_raised { assert_infinity(-Math.log(-0.0)) } assert_raise(Math::DomainError) { Math.log(-1.0) } assert_raise(TypeError) { Math.log(1,nil) } + assert_raise(Math::DomainError, '[ruby-core:62309] [ruby-Bug #9797]') { Math.log(1.0, -1.0) } + assert_nothing_raised { assert_nan(Math.log(0.0, 0.0)) } end def test_log2 -- cgit v1.2.3