summaryrefslogtreecommitdiff
path: root/rt/t/api/i18n_mime_encoding.t
diff options
context:
space:
mode:
Diffstat (limited to 'rt/t/api/i18n_mime_encoding.t')
-rw-r--r--rt/t/api/i18n_mime_encoding.t32
1 files changed, 32 insertions, 0 deletions
diff --git a/rt/t/api/i18n_mime_encoding.t b/rt/t/api/i18n_mime_encoding.t
new file mode 100644
index 000000000..5ad532ed2
--- /dev/null
+++ b/rt/t/api/i18n_mime_encoding.t
@@ -0,0 +1,32 @@
+use warnings;
+use strict;
+
+use RT::Test nodata => 1, tests => undef;
+use RT::I18N;
+use Test::Warn;
+
+diag "normal mime encoding conversion: utf8 => iso-8859-1";
+{
+ my $mime = MIME::Entity->build(
+ Type => 'text/plain; charset=utf-8',
+ Data => ['À中文'],
+ );
+
+ warning_like {
+ RT::I18N::SetMIMEEntityToEncoding( $mime, 'iso-8859-1', );
+ }
+ [ qr/does not map to iso-8859-1/ ], 'got one "not map" error';
+ is( $mime->stringify_body, 'À中文', 'body is not changed' );
+ is( $mime->head->mime_attr('Content-Type'), 'application/octet-stream' );
+}
+
+diag "mime encoding conversion: utf8 => iso-8859-1";
+{
+ my $mime = MIME::Entity->build(
+ Type => 'text/plain; charset=utf-8',
+ Data => ['À中文'],
+ );
+ is( $mime->stringify_body, 'À中文', 'body is not changed' );
+}
+
+done_testing;