summaryrefslogtreecommitdiff
path: root/test/ruby/test_integer.rb
diff options
context:
space:
mode:
authorKouhei Yanagita <yanagi@shakenbu.org>2022-05-27 15:46:46 +0900
committerYusuke Endoh <mame@ruby-lang.org>2022-08-12 15:57:52 +0900
commit4165fd0e763439421296fbc95d754ad53e6ae84f (patch)
tree30aaa3a05d87130965029484780cd28d06c1a1f0 /test/ruby/test_integer.rb
parentcd1a0b3caaa5446e9258c192cf483b6dfe8d7819 (diff)
Add Numeric#ceildiv and Integer#ceildiv
Notes
Notes: Merged: https://github.com/ruby/ruby/pull/5965
Diffstat (limited to 'test/ruby/test_integer.rb')
-rw-r--r--test/ruby/test_integer.rb17
1 files changed, 17 insertions, 0 deletions
diff --git a/test/ruby/test_integer.rb b/test/ruby/test_integer.rb
index a2b181c642..c3e11498be 100644
--- a/test/ruby/test_integer.rb
+++ b/test/ruby/test_integer.rb
@@ -704,4 +704,21 @@ class TestInteger < Test::Unit::TestCase
def o.to_int; Object.new; end
assert_raise_with_message(TypeError, /can't convert Object to Integer/) {Integer.try_convert(o)}
end
+
+ def test_ceildiv
+ assert_equal(0, 0.ceildiv(3))
+ assert_equal(1, 1.ceildiv(3))
+ assert_equal(1, 3.ceildiv(3))
+ assert_equal(2, 4.ceildiv(3))
+
+ assert_equal(-1, 4.ceildiv(-3))
+ assert_equal(-1, -4.ceildiv(3))
+ assert_equal(2, -4.ceildiv(-3))
+
+ assert_equal(3, 3.ceildiv(1.2))
+ assert_equal(3, 3.ceildiv(6/5r))
+
+ assert_equal(10, (10**100-11).ceildiv(10**99-1))
+ assert_equal(11, (10**100-9).ceildiv(10**99-1))
+ end
end