ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/JSON-XS/t/13_limit.t
Revision: 1.6
Committed: Sat Apr 5 18:15:46 2008 UTC (16 years, 2 months ago) by root
Content type: application/x-troff
Branch: MAIN
CVS Tags: rel-4_0, rel-2_222, rel-3_0, rel-4_01, rel-4_03, rel-4_02, rel-2_2, rel-2_3, rel-4_0_00, rel-2_34, rel-2_32, rel-2_33, rel-2_31, rel-2_2311, rel-3_01, rel-3_02, rel-3_03, rel-3_04, rel-2_232, rel-2_231, rel-2_29, rel-2_28, rel-2_21, rel-2_2222, rel-2_23, rel-2_22, rel-2_25, rel-2_24, rel-2_27, rel-2_26, HEAD
Changes since 1.5: +2 -2 lines
Log Message:
*** empty log message ***

File Contents

# User Rev Content
1 root 1.5 BEGIN { $| = 1; print "1..11\n"; }
2 root 1.1
3     use JSON::XS;
4    
5     our $test;
6     sub ok($;$) {
7     print $_[0] ? "" : "not ", "ok ", ++$test, "\n";
8     }
9    
10 root 1.4 my $def = 512;
11    
12 root 1.1 my $js = JSON::XS->new;
13    
14 root 1.4 ok (!eval { $js->decode (("[" x ($def + 1)) . ("]" x ($def + 1))) });
15     ok (ref $js->decode (("[" x $def) . ("]" x $def)));
16     ok (ref $js->decode (("{\"\":" x ($def - 1)) . "[]" . ("}" x ($def - 1))));
17     ok (!eval { $js->decode (("{\"\":" x $def) . "[]" . ("}" x $def)) });
18    
19 root 1.1 ok (ref $js->max_depth (32)->decode (("[" x 32) . ("]" x 32)));
20    
21     ok ($js->max_depth(1)->encode ([]));
22     ok (!eval { $js->encode ([[]]), 1 });
23    
24     ok ($js->max_depth(2)->encode ([{}]));
25     ok (!eval { $js->encode ([[{}]]), 1 });
26    
27 root 1.6 ok (eval { ref $js->max_size (8)->decode ("[ ]") });
28     eval { $js->max_size (8)->decode ("[ ]") }; ok ($@ =~ /max_size/);
29 root 1.5