1use strict; 2use warnings; 3use Test::More; 4BEGIN { $ENV{PERL_JSON_BACKEND} = 0; } 5use JSON::PP; 6 7#SKIP_ALL_UNLESS_PP 2.90 8 9BEGIN { plan tests => 2 }; 10 11my $json = JSON::PP->new; 12my $kb = 'a' x 1024; 13my $hash = { map { $_ => $kb } (1..40) }; 14my $data = join ( '', $json->encode($hash), $json->encode($hash) ); 15my $size = length($data); 16# note "Total size: [$size]"; 17my $offset = 0; 18while ($size) { 19 # note "Bytes left [$size]"; 20 my $incr = substr($data, $offset, 4096); 21 my $bytes = length($incr); 22 $size -= $bytes; 23 $offset += $bytes; 24 if ($bytes) { 25 $json->incr_parse($incr); 26 } 27 while( my $obj = $json->incr_parse ) { 28 ok "Got JSON object"; 29 } 30} 31