Commit | Line | Data |
4e1fb2f8 |
1 | use warnings; |
b25b7f8f |
2 | use strict; |
3 | use Test::More; |
4 | |
c397f194 |
5 | # some tests to check JSON::PP versus JSON::MaybeXS for legacy methods |
b25b7f8f |
6 | |
c397f194 |
7 | unless ( eval { require JSON; 1 }) { |
8 | plan skip_all => 'No JSON'; |
b25b7f8f |
9 | } |
10 | |
11 | use JSON::MaybeXS qw/:legacy/; |
12 | use Encode; |
13 | use utf8; |
14 | |
15 | my @hovercraft = ( |
c397f194 |
16 | 'My hovercraft is full of eels', |
17 | 'Automjeti im është plot me ngjala', |
18 | 'حَوّامتي مُمْتِلئة بِأَنْقَلَيْسون', |
19 | ' Маё судна на паветранай падушцы поўна вуграмі', |
20 | '我的氣墊船裝滿了鱔魚 ', |
21 | 'Il mio hovercraft/aeroscivolante è pieno di anguille', |
22 | 'សុទ្ធតែឣន្ចងពេញទូកហាះយើង ។', |
23 | "Tá m'árthach foluaineach lán d'eascanna." |
b25b7f8f |
24 | ); |
25 | |
26 | foreach my $h (@hovercraft) { |
c397f194 |
27 | $h = '["' . $h . '"]'; |
28 | my $j_perl = JSON::from_json($h); |
29 | my $j_json = JSON::to_json($j_perl); |
30 | |
31 | my $h_enc = Encode::encode_utf8($h); |
32 | my $j_perl_enc = JSON::from_json($h_enc); |
33 | my $j_json_enc = JSON::to_json($j_perl_enc); |
34 | |
35 | my $jm_perl = from_json($h); |
36 | my $jm_json = to_json($jm_perl); |
37 | |
38 | my $jm_perl_enc = from_json($h_enc); |
39 | my $jm_json_enc = to_json($jm_perl_enc); |
40 | |
41 | is_deeply($j_perl, $jm_perl); |
42 | is_deeply($j_perl_enc, $jm_perl_enc); |
43 | is ($j_json, $jm_json); |
44 | is ($j_json_enc, $jm_json_enc); |
b25b7f8f |
45 | } |
c397f194 |
46 | |
b25b7f8f |
47 | done_testing(); |