blob: 9c1a3c3d2a9a55f6644ba08588b0127b6a571b8c (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
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
|