Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(111)

Side by Side Diff: third_party/JSON/JSON-2.59/t/e10_bignum.t

Issue 15736030: Add JSON.pm to third_party (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix permissions and shebangs Created 7 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
(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 }
OLDNEW
« no previous file with comments | « third_party/JSON/JSON-2.59/t/e09_encode.t ('k') | third_party/JSON/JSON-2.59/t/e11_conv_blessed_univ.t » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698