summaryrefslogtreecommitdiff
path: root/jni/ruby/test/-ext-/bignum/test_str2big.rb
diff options
context:
space:
mode:
Diffstat (limited to 'jni/ruby/test/-ext-/bignum/test_str2big.rb')
-rw-r--r--jni/ruby/test/-ext-/bignum/test_str2big.rb37
1 files changed, 37 insertions, 0 deletions
diff --git a/jni/ruby/test/-ext-/bignum/test_str2big.rb b/jni/ruby/test/-ext-/bignum/test_str2big.rb
new file mode 100644
index 0000000..4304be8
--- /dev/null
+++ b/jni/ruby/test/-ext-/bignum/test_str2big.rb
@@ -0,0 +1,37 @@
+require 'test/unit'
+require "-test-/bignum"
+
+class TestBignum < Test::Unit::TestCase
+ class TestStr2big < Test::Unit::TestCase
+
+ SIZEOF_BDIGIT = Bignum::SIZEOF_BDIGIT
+ BITSPERDIG = Bignum::BITSPERDIG
+ BDIGMAX = (1 << BITSPERDIG) - 1
+
+ def test_str2big_poweroftwo
+ s = "1" + "0" * 1000
+ n = 16 ** 1000
+ assert_equal(n, s.str2big_poweroftwo(16, true))
+ end
+
+ def test_str2big_normal
+ s = "1" + "0" * 1000
+ n = 10 ** 1000
+ assert_equal(n, s.str2big_normal(10, true))
+ end
+
+ def test_str2big_karatsuba
+ s = "1" + "0" * 1000
+ n = 10 ** 1000
+ assert_equal(n, s.str2big_karatsuba(10, true))
+ end
+
+ def test_str2big_gmp
+ s = "1" + "0" * 1000
+ n = 10 ** 1000
+ assert_equal(n, s.str2big_gmp(10, true))
+ rescue NotImplementedError
+ end
+
+ end
+end