Commit | Line | Data |
---|---|---|
d5424315 DG |
1 | use strict; |
2 | use Test::More; | |
3 | ||
4 | BEGIN { plan tests => 3 }; | |
5 | ||
6 | BEGIN { $ENV{PERL_JSON_BACKEND} = 0; } | |
7 | ||
8 | use JSON::PP; | |
9 | ||
10 | BEGIN { | |
11 | use lib qw(t); | |
12 | use _unicode_handling; | |
13 | } | |
14 | ||
15 | my $json = JSON::PP->new->allow_nonref->utf8; | |
16 | my $str = '\\u00c8'; | |
17 | ||
18 | my $value = $json->decode( '"\\u00c8"' ); | |
19 | ||
20 | #use Devel::Peek; | |
21 | #Dump( $value ); | |
22 | ||
23 | is( $value, chr 0xc8 ); | |
24 | ||
25 | SKIP: { | |
26 | skip "UNICODE handling is disabale.", 1 unless $JSON::PP::can_handle_UTF16_and_utf8; | |
27 | ok( utf8::is_utf8( $value ) ); | |
28 | } | |
29 | ||
30 | eval { $json->decode( '"' . chr(0xc8) . '"' ) }; | |
31 | ok( $@ =~ /malformed UTF-8 character in JSON string/ ); | |
32 |