| Index: third_party/JSON/JSON-2.59/t/xe10_bignum.t
|
| diff --git a/third_party/JSON/JSON-2.59/t/xe10_bignum.t b/third_party/JSON/JSON-2.59/t/xe10_bignum.t
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..d72b8ad16e0aedca78bce5950a0f0f240a05cb2c
|
| --- /dev/null
|
| +++ b/third_party/JSON/JSON-2.59/t/xe10_bignum.t
|
| @@ -0,0 +1,36 @@
|
| +
|
| +use strict;
|
| +use Test::More;
|
| +BEGIN { plan tests => 6 };
|
| +
|
| +BEGIN { $ENV{PERL_JSON_BACKEND} = 1; }
|
| +
|
| +use JSON -support_by_pp;
|
| +
|
| +eval q| require Math::BigInt |;
|
| +
|
| +
|
| +SKIP: {
|
| + skip "can't use JSON::XS.", 6, unless( JSON->backend->is_xs );
|
| + skip "Can't load Math::BigInt.", 6 if ($@);
|
| +
|
| +my $json = new JSON;
|
| +print $json->backend, "\n";
|
| +
|
| +$json->allow_nonref->allow_bignum(1);
|
| +$json->convert_blessed->allow_blessed;
|
| +
|
| +my $num = $json->decode(q|100000000000000000000000000000000000000|);
|
| +
|
| +isa_ok($num, 'Math::BigInt');
|
| +is($num, '100000000000000000000000000000000000000');
|
| +is($json->encode($num), '100000000000000000000000000000000000000');
|
| +
|
| +$num = $json->decode(q|2.0000000000000000001|);
|
| +
|
| +isa_ok($num, 'Math::BigFloat');
|
| +is($num, '2.0000000000000000001');
|
| +is($json->encode($num), '2.0000000000000000001');
|
| +
|
| +
|
| +}
|
|
|