--- JSON-XS/t/12_blessed.t 2007/07/01 22:20:00 1.1 +++ JSON-XS/t/12_blessed.t 2007/07/02 00:48:18 1.2 @@ -1,4 +1,4 @@ -BEGIN { $| = 1; print "1..6\n"; } +BEGIN { $| = 1; print "1..15\n"; } use JSON::XS; @@ -25,3 +25,22 @@ ok ($js->encode ($o1) eq '{"__":""}'); ok ($js->encode ($o2) eq "null"); +$js->filter_json_object (sub { 5 }); +$js->filter_json_single_key_object (sub { 6 }); + +ok ("ARRAY" eq ref $js->decode ("[]")); +ok (5 eq join ":", @{ $js->decode ('[{}]') }); +ok (6 eq join ":", @{ $js->decode ('[{"a":4}]') }); +ok (5 eq join ":", @{ $js->decode ('[{"a":4,"b":7}]') }); + +$js->filter_json_object; +ok (7 == $js->decode ('[{"a":4,"b":7}]')->[0]{b}); +ok (6 eq join ":", @{ $js->decode ('[{"a":4}]') }); + +$js->filter_json_object (sub { }); +ok (7 == $js->decode ('[{"a":4,"b":7}]')->[0]{b}); +ok (6 eq join ":", @{ $js->decode ('[{"a":4}]') }); + +$js->filter_json_single_key_object (sub { }); +ok (4 == $js->decode ('[{"a":4}]')->[0]{a}); +