Index: third_party/JSON/JSON-2.59/t/e09_encode.t |
diff --git a/third_party/JSON/JSON-2.59/t/e09_encode.t b/third_party/JSON/JSON-2.59/t/e09_encode.t |
new file mode 100644 |
index 0000000000000000000000000000000000000000..05acb15fb262aec981639c92afa490ff6e2bd104 |
--- /dev/null |
+++ b/third_party/JSON/JSON-2.59/t/e09_encode.t |
@@ -0,0 +1,39 @@ |
+# |
+# decode on Perl 5.005, 5.6, 5.8 or later |
+# |
+use strict; |
+use Test::More; |
+ |
+BEGIN { plan tests => 7 }; |
+ |
+BEGIN { $ENV{PERL_JSON_BACKEND} = "JSON::backportPP"; } |
+ |
+use JSON; |
+ |
+BEGIN { |
+ use lib qw(t); |
+ use _unicode_handling; |
+} |
+ |
+no utf8; |
+ |
+my $json = JSON->new->allow_nonref; |
+ |
+is($json->encode("ü"), q|"ü"|); # as is |
+ |
+$json->ascii; |
+ |
+is($json->encode("\xfc"), q|"\u00fc"|); # latin1 |
+is($json->encode("\xc3\xbc"), q|"\u00c3\u00bc"|); # utf8 |
+is($json->encode("ü"), q|"\u00c3\u00bc"|); # utf8 |
+is($json->encode('あ'), q|"\u00e3\u0081\u0082"|); |
+ |
+if ($] >= 5.006) { |
+ is($json->encode(chr hex 3042 ), q|"\u3042"|); |
+ is($json->encode(chr hex 12345 ), q|"\ud808\udf45"|); |
+} |
+else { |
+ is($json->encode(chr hex 3042 ), $json->encode(chr 66)); |
+ is($json->encode(chr hex 12345 ), $json->encode(chr 69)); |
+} |
+ |