| OLD | NEW | 
| (Empty) |  | 
 |   1  | 
 |   2 use strict; | 
 |   3 use Test::More; | 
 |   4 BEGIN { plan tests => 6 }; | 
 |   5  | 
 |   6 BEGIN { $ENV{PERL_JSON_BACKEND} = "JSON::backportPP"; } | 
 |   7  | 
 |   8 use JSON -support_by_pp; | 
 |   9  | 
 |  10 eval q| require Math::BigInt |; | 
 |  11  | 
 |  12 SKIP: { | 
 |  13     skip "Can't load Math::BigInt.", 6 if ($@); | 
 |  14  | 
 |  15     my $v = Math::BigInt->VERSION; | 
 |  16     $v =~ s/_.+$// if $v; | 
 |  17  | 
 |  18 my $fix =  !$v       ? '+' | 
 |  19           : $v < 1.6 ? '+' | 
 |  20           : ''; | 
 |  21  | 
 |  22  | 
 |  23 my $json = new JSON; | 
 |  24  | 
 |  25 $json->allow_nonref->allow_bignum(1); | 
 |  26 $json->convert_blessed->allow_blessed; | 
 |  27  | 
 |  28 my $num  = $json->decode(q|100000000000000000000000000000000000000|); | 
 |  29  | 
 |  30 isa_ok($num, 'Math::BigInt'); | 
 |  31 is("$num", $fix . '100000000000000000000000000000000000000'); | 
 |  32 is($json->encode($num), $fix . '100000000000000000000000000000000000000'); | 
 |  33  | 
 |  34 $num  = $json->decode(q|2.0000000000000000001|); | 
 |  35  | 
 |  36 isa_ok($num, 'Math::BigFloat'); | 
 |  37 is("$num", '2.0000000000000000001'); | 
 |  38 is($json->encode($num), '2.0000000000000000001'); | 
 |  39  | 
 |  40  | 
 |  41 } | 
| OLD | NEW |