[PATCH9 BigInt v1.60 fix for "\n"
[p5sagit/p5-mst-13.2.git] / lib / Math / BigInt / t / constant.t
1 #!/usr/bin/perl -w
2
3 use strict;
4 use Test;
5
6 BEGIN
7   {
8   $| = 1;
9   chdir 't' if -d 't';
10   unshift @INC, '../lib'; # for running manually
11   plan tests => 7;
12   if ($] < 5.006)
13     {
14     for (1..7) { skip (1,'Not supported on older Perls'); }
15     exit;
16     }
17   } 
18
19 use Math::BigInt ':constant';
20
21 ok (2 ** 255,'57896044618658097711785492504343953926634992332820282019728792003956564819968');
22
23 {
24   no warnings 'portable';
25 # hexadecimal constants
26 ok (0x123456789012345678901234567890,
27     Math::BigInt->new('0x123456789012345678901234567890'));
28 # binary constants
29 ok (0b01010100011001010110110001110011010010010110000101101101,
30     Math::BigInt->new(
31      '0b01010100011001010110110001110011010010010110000101101101'));
32 }
33
34 use Math::BigFloat ':constant';
35 ok (1.0 / 3.0, '0.3333333333333333333333333333333333333333');
36
37 # stress-test Math::BigFloat->import()
38
39 Math::BigFloat->import( qw/:constant/ );
40 ok (1,1);
41
42 Math::BigFloat->import( qw/:constant upgrade Math::BigRat/ );
43 ok (1,1);
44
45 Math::BigFloat->import( qw/upgrade Math::BigRat :constant/ );
46 ok (1,1);
47
48 # all tests done
49