rational.c: zero division

* rational.c (read_rat_nos): denominator cannot be 0, raise zero
  division in that case.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57985 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
nobu 2017-03-16 01:53:52 +00:00
parent 1e07906a42
commit b296e29035
2 changed files with 6 additions and 0 deletions

View file

@ -776,6 +776,11 @@ class Rational_Test < Test::Unit::TestCase
ng[5, 3, '5/3x']
end
def test_parse_zero_denominator
assert_raise(ZeroDivisionError) {"1/0".to_r}
assert_raise(ZeroDivisionError) {Rational("1/0")}
end
def test_to_i
assert_equal(1, Rational(3,2).to_i)
assert_equal(1, Integer(Rational(3,2)))