comparison vendor/pear/mail_mime/tests/headers_with_mbstring.phpt @ 0:1e000243b222

vanilla 1.3.3 distro, I hope
author Charlie Root
date Thu, 04 Jan 2018 15:50:29 -0500
parents
children
comparison
equal deleted inserted replaced
-1:000000000000 0:1e000243b222
1 --TEST--
2 Multi-test for headers encoding using base64 and quoted-printable
3 --SKIPIF--
4 <?php
5 if (!function_exists('mb_substr') || !function_exists('mb_strlen')) {
6 die "skip mbstring functions not found!";
7 }
8 ?>
9 --FILE--
10 <?php
11 include("Mail/mime.php");
12 $mime = new Mail_mime();
13
14 $headers = array(
15 array('From', '<adresse@adresse.de>'),
16 array('From', 'adresse@adresse.de'),
17 array('From', 'Frank Do <adresse@adresse.de>'),
18 array('To', 'Frank Do <adresse@adresse.de>, James Clark <james@domain.com>'),
19 array('From', '"Frank Do" <adresse@adresse.de>'),
20 array('Cc', '"Frank Do" <adresse@adresse.de>, "James Clark" <james@domain.com>'),
21 array('Cc', ' <adresse@adresse.de>, "Kuśmiderski Jan Krzysztof Janusz Długa nazwa" <cris@domain.com>'),
22 array('From', '"adresse@adresse.de" <addresse@adresse>'),
23 array('From', 'adresse@adresse.de <addresse@adresse>'),
24 array('From', '"German Umlauts öäü" <adresse@adresse.de>'),
25 array('Subject', 'German Umlauts öäü <adresse@adresse.de>'),
26 array('Subject', 'Short ASCII subject'),
27 array('Subject', 'Long ASCII subject - multiline space separated words - too long for one line'),
28 array('Subject', 'Short Unicode ż subject'),
29 array('Subject', 'Long Unicode subject - zażółć gęślą jaźń - too long for one line'),
30 array('References', '<hglvja$jg7$1@nemesis.news.neostrada.pl> <4b2e87ac$1@news.home.net.pl> <hgm5b1$3a7$1@atlantis.news.neostrada.pl>'),
31 array('To', '"Frank Do" <adresse@adresse.de>,, "James Clark" <james@domain.com>'),
32 array('To', '"Frank \\" \\\\Do" <adresse@adresse.de>'),
33 array('To', 'Frank " \\Do <adresse@adresse.de>'),
34 array('Subject', "A REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY /REALLY/ LONG test"),
35 array('Subject', "TEST Süper gröse tolle grüße von mir Süper gröse tolle grüße von mir Süper gröse tolle grüße von mir Süper gröse tolle grüße von mir Süper gröse tolle grüße von mir Süper gröse tolle grüße von mir Süper gröse tolle grüße von mir Süper gröse tolle grüße von mir Süper gröse tolle grüße von mir!!!?"),
36 array('Subject', "Update: Microsoft Windows-Tool zum Entfernen bösartiger Software 3.6"),
37 array('From', "test@nàme <user@domain.com>"),
38 array('From', "Test <\"test test\"@domain.com>"),
39 array('From', "\"test test\"@domain.com"),
40 array('From', "<\"test test\"@domain.com>"),
41 array('From', "Doe<test@domain.com>"),
42 array('From', "\"John Doe\"<test@domain.com>"),
43 array('Mail-Reply-To', 'adresse@adresse.de <addresse@adresse>'),
44 array('Mail-Reply-To', '"öäü" <adresse@adresse.de>'),
45 );
46
47 $i = 1;
48 foreach ($headers as $header) {
49 $hdr = $mime->encodeHeader($header[0], $header[1], 'UTF-8', 'base64');
50 printf("[%02d] %s: %s\n", $i, $header[0], $hdr);
51 $hdr = $mime->encodeHeader($header[0], $header[1], 'UTF-8', 'quoted-printable');
52 printf("[%02d] %s: %s\n", $i, $header[0], $hdr);
53 $i++;
54 }
55 ?>
56 --EXPECT--
57 [01] From: <adresse@adresse.de>
58 [01] From: <adresse@adresse.de>
59 [02] From: adresse@adresse.de
60 [02] From: adresse@adresse.de
61 [03] From: Frank Do <adresse@adresse.de>
62 [03] From: Frank Do <adresse@adresse.de>
63 [04] To: Frank Do <adresse@adresse.de>, James Clark <james@domain.com>
64 [04] To: Frank Do <adresse@adresse.de>, James Clark <james@domain.com>
65 [05] From: "Frank Do" <adresse@adresse.de>
66 [05] From: "Frank Do" <adresse@adresse.de>
67 [06] Cc: "Frank Do" <adresse@adresse.de>, "James Clark" <james@domain.com>
68 [06] Cc: "Frank Do" <adresse@adresse.de>, "James Clark" <james@domain.com>
69 [07] Cc: <adresse@adresse.de>, =?UTF-8?B?S3XFm21pZGVyc2tpIEphbiBLcnp5c3p0b2Yg?=
70 =?UTF-8?B?SmFudXN6IETFgnVnYSBuYXp3YQ==?= <cris@domain.com>
71 [07] Cc: <adresse@adresse.de>, =?UTF-8?Q?Ku=C5=9Bmiderski_Jan_Krzysztof_Janusz?=
72 =?UTF-8?Q?_D=C5=82uga_nazwa?= <cris@domain.com>
73 [08] From: "adresse@adresse.de" <addresse@adresse>
74 [08] From: "adresse@adresse.de" <addresse@adresse>
75 [09] From: "adresse@adresse.de" <addresse@adresse>
76 [09] From: "adresse@adresse.de" <addresse@adresse>
77 [10] From: =?UTF-8?B?R2VybWFuIFVtbGF1dHMgw7bDpMO8?= <adresse@adresse.de>
78 [10] From: =?UTF-8?Q?German_Umlauts_=C3=B6=C3=A4=C3=BC?= <adresse@adresse.de>
79 [11] Subject: =?UTF-8?B?R2VybWFuIFVtbGF1dHMgw7bDpMO8IDxhZHJlc3NlQGFkcmVzc2Uu?=
80 =?UTF-8?B?ZGU+?=
81 [11] Subject: =?UTF-8?Q?German_Umlauts_=C3=B6=C3=A4=C3=BC_=3Cadresse=40adresse?=
82 =?UTF-8?Q?=2Ede=3E?=
83 [12] Subject: Short ASCII subject
84 [12] Subject: Short ASCII subject
85 [13] Subject: Long ASCII subject - multiline space separated words - too long for
86 one line
87 [13] Subject: Long ASCII subject - multiline space separated words - too long for
88 one line
89 [14] Subject: =?UTF-8?B?U2hvcnQgVW5pY29kZSDFvCBzdWJqZWN0?=
90 [14] Subject: =?UTF-8?Q?Short_Unicode_=C5=BC_subject?=
91 [15] Subject: =?UTF-8?B?TG9uZyBVbmljb2RlIHN1YmplY3QgLSB6YcW8w7PFgsSHIGfEmcWb?=
92 =?UTF-8?B?bMSFIGphxbrFhCAtIHRvbyBsb25nIGZvciBvbmUgbGluZQ==?=
93 [15] Subject: =?UTF-8?Q?Long_Unicode_subject_-_za=C5=BC=C3=B3=C5=82=C4=87_g?=
94 =?UTF-8?Q?=C4=99=C5=9Bl=C4=85_ja=C5=BA=C5=84_-_too_long_for_one_line?=
95 [16] References: <hglvja$jg7$1@nemesis.news.neostrada.pl>
96 <4b2e87ac$1@news.home.net.pl> <hgm5b1$3a7$1@atlantis.news.neostrada.pl>
97 [16] References: <hglvja$jg7$1@nemesis.news.neostrada.pl>
98 <4b2e87ac$1@news.home.net.pl> <hgm5b1$3a7$1@atlantis.news.neostrada.pl>
99 [17] To: "Frank Do" <adresse@adresse.de>, "James Clark" <james@domain.com>
100 [17] To: "Frank Do" <adresse@adresse.de>, "James Clark" <james@domain.com>
101 [18] To: "Frank \" \\Do" <adresse@adresse.de>
102 [18] To: "Frank \" \\Do" <adresse@adresse.de>
103 [19] To: "Frank \" \\Do" <adresse@adresse.de>
104 [19] To: "Frank \" \\Do" <adresse@adresse.de>
105 [20] Subject: A REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY
106 REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY
107 REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY
108 REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY /REALLY/ LONG test
109 [20] Subject: A REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY
110 REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY
111 REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY
112 REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY /REALLY/ LONG test
113 [21] Subject: =?UTF-8?B?VEVTVCBTw7xwZXIgZ3LDtnNlIHRvbGxlIGdyw7zDn2Ugdm9uIG1p?=
114 =?UTF-8?B?ciBTw7xwZXIgZ3LDtnNlIHRvbGxlIGdyw7zDn2Ugdm9uIG1pciBTw7xwZXIg?=
115 =?UTF-8?B?Z3LDtnNlIHRvbGxlIGdyw7zDn2Ugdm9uIG1pciBTw7xwZXIgZ3LDtnNlIHRv?=
116 =?UTF-8?B?bGxlIGdyw7zDn2Ugdm9uIG1pciBTw7xwZXIgZ3LDtnNlIHRvbGxlIGdyw7w=?=
117 =?UTF-8?B?w59lIHZvbiBtaXIgU8O8cGVyIGdyw7ZzZSB0b2xsZSBncsO8w59lIHZvbiBt?=
118 =?UTF-8?B?aXIgU8O8cGVyIGdyw7ZzZSB0b2xsZSBncsO8w59lIHZvbiBtaXIgU8O8cGVy?=
119 =?UTF-8?B?IGdyw7ZzZSB0b2xsZSBncsO8w59lIHZvbiBtaXIgU8O8cGVyIGdyw7ZzZSB0?=
120 =?UTF-8?B?b2xsZSBncsO8w59lIHZvbiBtaXIhISE/?=
121 [21] Subject: =?UTF-8?Q?TEST_S=C3=BCper_gr=C3=B6se_tolle_gr=C3=BC=C3=9Fe_von_m?=
122 =?UTF-8?Q?ir_S=C3=BCper_gr=C3=B6se_tolle_gr=C3=BC=C3=9Fe_von_mir_S=C3=BCp?=
123 =?UTF-8?Q?er_gr=C3=B6se_tolle_gr=C3=BC=C3=9Fe_von_mir_S=C3=BCper_gr=C3=B6?=
124 =?UTF-8?Q?se_tolle_gr=C3=BC=C3=9Fe_von_mir_S=C3=BCper_gr=C3=B6se_tolle_gr?=
125 =?UTF-8?Q?=C3=BC=C3=9Fe_von_mir_S=C3=BCper_gr=C3=B6se_tolle_gr=C3=BC?=
126 =?UTF-8?Q?=C3=9Fe_von_mir_S=C3=BCper_gr=C3=B6se_tolle_gr=C3=BC=C3=9Fe_von?=
127 =?UTF-8?Q?_mir_S=C3=BCper_gr=C3=B6se_tolle_gr=C3=BC=C3=9Fe_von_mir_S?=
128 =?UTF-8?Q?=C3=BCper_gr=C3=B6se_tolle_gr=C3=BC=C3=9Fe_von_mir!!!=3F?=
129 [22] Subject: =?UTF-8?B?VXBkYXRlOiBNaWNyb3NvZnQgV2luZG93cy1Ub29sIHp1bSBFbnRm?=
130 =?UTF-8?B?ZXJuZW4gYsO2c2FydGlnZXIgU29mdHdhcmUgMy42?=
131 [22] Subject: =?UTF-8?Q?Update=3A_Microsoft_Windows-Tool_zum_Entfernen_b=C3=B6?=
132 =?UTF-8?Q?sartiger_Software_3=2E6?=
133 [23] From: =?UTF-8?B?dGVzdEBuw6BtZQ==?= <user@domain.com>
134 [23] From: =?UTF-8?Q?test=40n=C3=A0me?= <user@domain.com>
135 [24] From: Test <"test test"@domain.com>
136 [24] From: Test <"test test"@domain.com>
137 [25] From: "test test"@domain.com
138 [25] From: "test test"@domain.com
139 [26] From: <"test test"@domain.com>
140 [26] From: <"test test"@domain.com>
141 [27] From: Doe <test@domain.com>
142 [27] From: Doe <test@domain.com>
143 [28] From: "John Doe" <test@domain.com>
144 [28] From: "John Doe" <test@domain.com>
145 [29] Mail-Reply-To: "adresse@adresse.de" <addresse@adresse>
146 [29] Mail-Reply-To: "adresse@adresse.de" <addresse@adresse>
147 [30] Mail-Reply-To: =?UTF-8?B?w7bDpMO8?= <adresse@adresse.de>
148 [30] Mail-Reply-To: =?UTF-8?Q?=C3=B6=C3=A4=C3=BC?= <adresse@adresse.de>