diff options
Diffstat (limited to 'jni/ruby/test/-ext-/bignum/test_div.rb')
-rw-r--r-- | jni/ruby/test/-ext-/bignum/test_div.rb | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/jni/ruby/test/-ext-/bignum/test_div.rb b/jni/ruby/test/-ext-/bignum/test_div.rb new file mode 100644 index 0000000..9c1a3c3 --- /dev/null +++ b/jni/ruby/test/-ext-/bignum/test_div.rb @@ -0,0 +1,28 @@ +require 'test/unit' +require "-test-/bignum" + +class TestBignum < Test::Unit::TestCase + class TestDiv < Test::Unit::TestCase + + SIZEOF_BDIGIT = Bignum::SIZEOF_BDIGIT + BITSPERDIG = Bignum::BITSPERDIG + BDIGMAX = (1 << BITSPERDIG) - 1 + + def test_divrem_normal + x = (1 << (BITSPERDIG*2)) | (2 << BITSPERDIG) | 3 + y = (1 << BITSPERDIG) | 1 + q = (1 << BITSPERDIG) | 1 + r = 2 + assert_equal([q, r], x.big_divrem_normal(y)) + end + + def test_divrem_gmp + x = (1 << (BITSPERDIG*2)) | (2 << BITSPERDIG) | 3 + y = (1 << BITSPERDIG) | 1 + q = (1 << BITSPERDIG) | 1 + r = 2 + assert_equal([q, r], x.big_divrem_gmp(y)) + rescue NotImplementedError + end + end +end |