mirror of
https://github.com/ruby/ruby.git
synced 2025-09-22 03:53:58 +02:00
util.c: round to even
* util.c (ruby_dtoa): round to even, instead of rounding to nearest. [ruby-core:77864] [Bug #12889] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56557 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
25728a1963
commit
6ed8c79ddb
3 changed files with 23 additions and 8 deletions
|
@ -283,7 +283,16 @@ class TestSprintf < Test::Unit::TestCase
|
|||
end
|
||||
|
||||
def test_float_prec
|
||||
assert_equal("5.03", sprintf("%.2f",5.025))
|
||||
assert_equal("5.00", sprintf("%.2f",5.005))
|
||||
assert_equal("5.02", sprintf("%.2f",5.015))
|
||||
assert_equal("5.02", sprintf("%.2f",5.025))
|
||||
assert_equal("5.04", sprintf("%.2f",5.035))
|
||||
bug12889 = '[ruby-core:77864] [Bug #12889]'
|
||||
assert_equal("1234567892", sprintf("%.0f", 1234567891.99999))
|
||||
assert_equal("1234567892", sprintf("%.0f", 1234567892.49999))
|
||||
assert_equal("1234567892", sprintf("%.0f", 1234567892.50000))
|
||||
assert_equal("1234567894", sprintf("%.0f", 1234567893.50000))
|
||||
assert_equal("1234567892", sprintf("%.0f", 1234567892.00000), bug12889)
|
||||
end
|
||||
|
||||
BSIZ = 120
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue