]> git.donarmstrong.com Git - debbugs.git/blob - t/01_mime.t
a759adc146441a0608295801822fbc398932f292
[debbugs.git] / t / 01_mime.t
1 # -*- mode: cperl;-*-
2 # $Id: 01_mime.t,v 1.1 2005/08/17 21:46:17 don Exp $
3
4 use Test::More tests => 5;
5
6 use warnings;
7 use strict;
8
9 use utf8;
10 use Encode;
11
12 use_ok('Debbugs::MIME');
13
14 # encode_headers testing
15
16 my $test_str = <<'END';
17 Döñ Ärḿßtrøñĝ <don@donarmstrong.com>
18 END
19
20 my $test_str2 = <<'END';
21  Döñ Ärḿßtrøñĝ <don@donarmstrong.com>
22 END
23
24 # 1: test decode
25 ok(Debbugs::MIME::decode_rfc1522(q(=?iso-8859-1?Q?D=F6n_Armstr=F3ng?= <don@donarmstrong.com>)) eq
26   encode_utf8(q(Dön Armstróng <don@donarmstrong.com>)),"decode_rfc1522 decodes and converts to UTF8 properly");
27
28
29 # 2: test encode
30 ok(Debbugs::MIME::decode_rfc1522(Debbugs::MIME::encode_rfc1522($test_str)) eq $test_str,
31   "encode_rfc1522 encodes strings that decode_rfc1522 can decode");
32 ok(Debbugs::MIME::decode_rfc1522(Debbugs::MIME::encode_rfc1522($test_str2)) eq $test_str2,
33   "encode_rfc1522 encodes strings that decode_rfc1522 can decode");
34
35
36 # Make sure that create_mime_message has encoded headers and doesn't enclude any 8-bit characters
37
38 $test_str = Encode::encode("UTF-8",$test_str);
39 ok(Debbugs::MIME::create_mime_message([Subject => $test_str,
40                                        From    => $test_str,
41                                       ],
42                                       $test_str,
43                                       [],
44                                      ) !~ m{([\xF0-\xFF]+)},
45    "create_mime_message properly encodes 8bit messages."
46   );
47
48 # XXX figure out how to test parse