aboutsummaryrefslogtreecommitdiffstats
path: root/activesupport/test/core_ext/float_ext_test.rb
diff options
context:
space:
mode:
authorMichael Koziarski <michael@koziarski.com>2007-09-02 23:54:08 +0000
committerMichael Koziarski <michael@koziarski.com>2007-09-02 23:54:08 +0000
commitf0dbd22c4647bf8e37fd9b58ce6652aaca27376e (patch)
treeac07cde2f7f9d84bd88e405cfc8a8c4520cbc37e /activesupport/test/core_ext/float_ext_test.rb
parent21837821a804f6c26a0672f9ce5697e198624968 (diff)
downloadrails-f0dbd22c4647bf8e37fd9b58ce6652aaca27376e.tar.gz
rails-f0dbd22c4647bf8e37fd9b58ce6652aaca27376e.tar.bz2
rails-f0dbd22c4647bf8e37fd9b58ce6652aaca27376e.zip
Allow Float#round to take a precision argument. Closes #8626 [norbert]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@7401 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
Diffstat (limited to 'activesupport/test/core_ext/float_ext_test.rb')
-rw-r--r--activesupport/test/core_ext/float_ext_test.rb25
1 files changed, 25 insertions, 0 deletions
diff --git a/activesupport/test/core_ext/float_ext_test.rb b/activesupport/test/core_ext/float_ext_test.rb
new file mode 100644
index 0000000000..b74add519f
--- /dev/null
+++ b/activesupport/test/core_ext/float_ext_test.rb
@@ -0,0 +1,25 @@
+require File.dirname(__FILE__) + '/../abstract_unit'
+
+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