1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
|
use Test::More;
BEGIN {
if( ord("A") == 193 ) {
plan skip_all => 'No Encode::MIME::Header::ISO_2022_JP on EBCDIC Platforms';
} else {
plan tests => 14;
}
}
use strict;
use Encode;
BEGIN{
use_ok('Encode::MIME::Header::ISO_2022_JP');
}
require_ok('Encode::MIME::Header::ISO_2022_JP');
# below codes are from mime.t in Jcode
my %mime = (
"ʡҤ餬"
=> "=?ISO-2022-JP?B?GyRCNEE7eiEiJSslPyUrJUohIiRSJGkkLCRKGyhC?=",
"foo bar"
=> "foo bar",
"ʡҤ餬ʤκäSubject Header."
=> "=?ISO-2022-JP?B?GyRCNEE7eiEiJSslPyUrJUohIiRSJGkkLCRKJE46LiQ4JEMkPxsoQlN1?=\n =?ISO-2022-JP?B?YmplY3Q=?= Header.",
);
for my $k (keys %mime){
$mime{"$k\n"} = $mime{$k} . "\n";
}
for my $decoded (sort keys %mime){
my $encoded = $mime{$decoded};
my $header = Encode::encode('MIME-Header-ISO_2022_JP', decode('euc-jp', $decoded));
my $utf8 = Encode::decode('MIME-Header', $header);
is(encode('euc-jp', $utf8), $decoded);
is($header, $encoded);
}
__END__
|