summaryrefslogtreecommitdiff
path: root/t/mbi_ltm_bigintpm.t
diff options
context:
space:
mode:
Diffstat (limited to 't/mbi_ltm_bigintpm.t')
-rw-r--r--t/mbi_ltm_bigintpm.t52
1 files changed, 52 insertions, 0 deletions
diff --git a/t/mbi_ltm_bigintpm.t b/t/mbi_ltm_bigintpm.t
new file mode 100644
index 00000000..ebb7582e
--- /dev/null
+++ b/t/mbi_ltm_bigintpm.t
@@ -0,0 +1,52 @@
+#!perl
+
+use strict;
+use warnings;
+
+use Test::More;
+
+BEGIN {
+ plan skip_all => "requires Math::BigInt 1.999712+" unless eval { require Math::BigInt && eval($Math::BigInt::VERSION) >= 1.999712 };
+ plan tests => 3722 # tests in require'd file
+ + 6; # tests in this file
+}
+
+use Math::BigInt lib => 'LTM';
+
+our ($CLASS, $CALC);
+$CLASS = "Math::BigInt";
+$CALC = "Math::BigInt::LTM";
+
+my $x;
+
+#############################################################################
+# from_hex(), from_bin() and from_oct() tests
+
+$x = Math::BigInt->from_hex('0xcafe');
+is($x, "51966",
+ qq|Math::BigInt->from_hex("0xcafe")|);
+
+$x = Math::BigInt->from_hex('0xcafebabedead');
+is($x, "223195403574957",
+ qq|Math::BigInt->from_hex("0xcafebabedead")|);
+
+$x = Math::BigInt->from_bin('0b1001');
+is($x, "9",
+ qq|Math::BigInt->from_bin("0b1001")|);
+
+$x = Math::BigInt->from_bin('0b1001100110011001100110011001');
+is($x, "161061273",
+ qq|Math::BigInt->from_bin("0b1001100110011001100110011001");|);
+
+$x = Math::BigInt->from_oct('0775');
+is($x, "509",
+ qq|Math::BigInt->from_oct("0775");|);
+
+$x = Math::BigInt->from_oct('07777777777777711111111222222222');
+is($x, "9903520314281112085086151826",
+ qq|Math::BigInt->from_oct("07777777777777711111111222222222");|);
+
+#############################################################################
+# all the other tests
+
+require './t/mbi_ltm/bigintpm.inc'; # all tests here for sharing