1# 2# decode on Perl 5.005, 5.6, 5.8 or later 3# 4use strict; 5use warnings; 6use Test::More; 7 8BEGIN { plan tests => 7 }; 9 10BEGIN { $ENV{PERL_JSON_BACKEND} = 0; } 11 12use JSON::PP; 13 14no utf8; 15 16my $json = JSON::PP->new->allow_nonref; 17 18is($json->encode("ü"), q|"ü"|); # as is 19 20$json->ascii; 21 22is($json->encode("\xfc"), q|"\u00fc"|); # latin1 23is($json->encode("\xc3\xbc"), q|"\u00c3\u00bc"|); # utf8 24is($json->encode("ü"), q|"\u00c3\u00bc"|); # utf8 25is($json->encode('あ'), q|"\u00e3\u0081\u0082"|); 26 27if ($] >= 5.006) { 28 is($json->encode(chr hex 3042 ), q|"\u3042"|); 29 is($json->encode(chr hex 12345 ), q|"\ud808\udf45"|); 30} 31else { 32 is($json->encode(chr hex 3042 ), $json->encode(chr 66)); 33 is($json->encode(chr hex 12345 ), $json->encode(chr 69)); 34} 35 36