diff options
author | Ivan Kohler <ivan@freeside.biz> | 2012-04-24 11:35:56 -0700 |
---|---|---|
committer | Ivan Kohler <ivan@freeside.biz> | 2012-04-24 11:35:56 -0700 |
commit | 6587f6ba7d047ddc1686c080090afe7d53365bd4 (patch) | |
tree | ec77342668e8865aca669c9b4736e84e3077b523 /rt/t/api/canonical_charset.t | |
parent | 47153aae5c2fc00316654e7277fccd45f72ff611 (diff) |
first pass RT4 merge, RT#13852
Diffstat (limited to 'rt/t/api/canonical_charset.t')
-rw-r--r-- | rt/t/api/canonical_charset.t | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/rt/t/api/canonical_charset.t b/rt/t/api/canonical_charset.t new file mode 100644 index 000000000..a426d89b6 --- /dev/null +++ b/rt/t/api/canonical_charset.t @@ -0,0 +1,30 @@ +use warnings; +use strict; + +use RT::Test nodata => 1, tests => 11; +use RT::I18N; +use Encode; + +my %map = ( + 'euc-cn' => 'gbk', + 'gb-2312' => 'gbk', + gb2312 => 'gbk', + utf8 => 'utf-8', + 'utf-8' => 'utf-8', +); + +for my $charset ( keys %map ) { + is( RT::I18N::_CanonicalizeCharset($charset), + $map{$charset}, "$charset => $map{$charset}" ); + is( RT::I18N::_CanonicalizeCharset( uc $charset ), + $map{$charset}, uc( $charset ) . " => $map{$charset}" ); +} + +my $mime = MIME::Entity->build( + Type => 'text/plain; charset=gb2312', + Data => [encode('gbk', decode_utf8("法新社倫敦11日電"))], +); + +RT::I18N::SetMIMEEntityToUTF8($mime); +is( $mime->stringify_body, '法新社倫敦11日電', 'gb2312 => gbk in mail' ); + |