From d403562e3f7ac96df7cee2c1709ecd970b6c9761 Mon Sep 17 00:00:00 2001 From: Lorry Tar Creator Date: Sun, 19 Jul 2015 17:50:38 +0000 Subject: HTTP-Message-6.10 --- t/message-decode-xml.t | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 t/message-decode-xml.t (limited to 't/message-decode-xml.t') diff --git a/t/message-decode-xml.t b/t/message-decode-xml.t new file mode 100644 index 0000000..0bf7626 --- /dev/null +++ b/t/message-decode-xml.t @@ -0,0 +1,33 @@ +# https://rt.cpan.org/Public/Bug/Display.html?id=52572 + +use strict; +use warnings; + +use Test::More; +plan tests => 2; + +use Encode qw( encode ); +use HTTP::Headers qw( ); +use HTTP::Response qw( ); +use PerlIO::encoding qw( ); + +{ + my $builder = Test::More->builder; + local $PerlIO::encoding::fallback = Encode::PERLQQ(); + binmode $builder->output, ":encoding(US-ASCII)"; + binmode $builder->failure_output, ":encoding(US-ASCII)"; + binmode $builder->todo_output, ":encoding(US-ASCII)"; +} + +for my $enc (qw( UTF-8 UTF-16le )) { + my $file = encode($enc, + ($enc =~ /^UTF-/ ? "\x{FEFF}" : "") . + qq{\n} . + qq{\x{C9}ric\n} + ); + + my $headers = HTTP::Headers->new(Content_Type => "application/xml"); + my $response = HTTP::Response->new(200, "OK", $headers, $file); + + is($response->decoded_content, qq(\n\x{c9}ric\n), $enc); +} -- cgit v1.2.1