2008-05-18 06:22:34 +02:00
|
|
|
require 'abstract_unit'
|
2007-12-21 08:48:59 +01:00
|
|
|
|
|
|
|
class FloatExtRoundingTests < Test::Unit::TestCase
|
|
|
|
def test_round_for_positive_number
|
|
|
|
assert_equal 1, 1.4.round
|
|
|
|
assert_equal 2, 1.6.round
|
|
|
|
assert_equal 2, 1.6.round(0)
|
|
|
|
assert_equal 1.4, 1.4.round(1)
|
|
|
|
assert_equal 1.4, 1.4.round(3)
|
|
|
|
assert_equal 1.5, 1.45.round(1)
|
|
|
|
assert_equal 1.45, 1.445.round(2)
|
|
|
|
end
|
|
|
|
|
|
|
|
def test_round_for_negative_number
|
|
|
|
assert_equal( -1, -1.4.round )
|
|
|
|
assert_equal( -2, -1.6.round )
|
|
|
|
assert_equal( -1.4, -1.4.round(1) )
|
|
|
|
assert_equal( -1.5, -1.45.round(1) )
|
|
|
|
end
|
|
|
|
|
|
|
|
def test_round_with_negative_precision
|
|
|
|
assert_equal 123460.0, 123456.0.round(-1)
|
|
|
|
assert_equal 123500.0, 123456.0.round(-2)
|
|
|
|
end
|
|
|
|
end
|