X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=t%2F01_mime.t;h=8f1f2ca9c3d954ea05db15f87b9088b0d1d7cfd3;hb=bef92e64a60dbdb4df7abb60dc020d7c68f0355b;hp=ed16d7043a376a61c95eb226396c28082e349044;hpb=4692d502113156a65b4691a5963cebe0d37114d3;p=debbugs.git diff --git a/t/01_mime.t b/t/01_mime.t index ed16d70..8f1f2ca 100644 --- a/t/01_mime.t +++ b/t/01_mime.t @@ -1,28 +1,53 @@ # -*- mode: cperl;-*- # $Id: 01_mime.t,v 1.1 2005/08/17 21:46:17 don Exp $ -use Test::More tests => 3; +use Test::More tests => 6; use warnings; use strict; -use utf8; +use Encode; use_ok('Debbugs::MIME'); # encode_headers testing -my $test_str = <<'END'; +my $test_str = decode_utf8(<<'END'); Döñ Ärḿßtrøñĝ END +my $test_str2 = decode_utf8(<<'END'); + Döñ Ärḿßtrøñĝ +END + +my $test_str3 =decode_utf8(<<'END'); +foo@bar.com (J fö"ø) +END + # 1: test decode ok(Debbugs::MIME::decode_rfc1522(q(=?iso-8859-1?Q?D=F6n_Armstr=F3ng?= )) eq q(Dön Armstróng ),"decode_rfc1522 decodes and converts to UTF8 properly"); # 2: test encode -ok(Debbugs::MIME::decode_rfc1522(Debbugs::MIME::encode_rfc1522($test_str)) eq $test_str, +ok(Debbugs::MIME::decode_rfc1522(Debbugs::MIME::encode_rfc1522($test_str)) eq encode_utf8($test_str), "encode_rfc1522 encodes strings that decode_rfc1522 can decode"); +ok(Debbugs::MIME::decode_rfc1522(Debbugs::MIME::encode_rfc1522($test_str2)) eq encode_utf8($test_str2), + "encode_rfc1522 encodes strings that decode_rfc1522 can decode"); +ok(Debbugs::MIME::decode_rfc1522(Debbugs::MIME::encode_rfc1522($test_str3)) eq encode_utf8($test_str3), + "encode_rfc1522 properly handles parentesis and \""); + + +# Make sure that create_mime_message has encoded headers and doesn't enclude any 8-bit characters + +$test_str = Encode::encode("UTF-8",$test_str); +ok(Debbugs::MIME::create_mime_message([Subject => $test_str, + From => $test_str, + ], + $test_str, + [], + ) !~ m{([\xF0-\xFF]+)}, + "create_mime_message properly encodes 8bit messages." + ); # XXX figure out how to test parse