Subversion-Projekte lars-tiefland.php_share

Revision

Details | Letzte Änderung | Log anzeigen | RSS feed

Revision Autor Zeilennr. Zeile
1 lars 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 found!");
7
}
8
?>
9
--FILE--
10
<?php
11
error_reporting(E_ALL); // ignore E_STRICT
12
include("Mail/mime.php");
13
$mime = new Mail_mime();
14
 
15
$headers = array(
16
array('From', '<adresse@adresse.de>'),
17
array('From', 'adresse@adresse.de'),
18
array('From', 'Frank Do <adresse@adresse.de>'),
19
array('To', 'Frank Do <adresse@adresse.de>, James Clark <james@domain.com>'),
20
array('From', '"Frank Do" <adresse@adresse.de>'),
21
array('Cc', '"Frank Do" <adresse@adresse.de>, "James Clark" <james@domain.com>'),
22
array('Cc', ' <adresse@adresse.de>, "Kuśmiderski Jan Krzysztof Janusz Długa nazwa" <cris@domain.com>'),
23
array('From', '"adresse@adresse.de" <addresse@adresse>'),
24
array('From', 'adresse@adresse.de <addresse@adresse>'),
25
array('From', '"German Umlauts öäü" <adresse@adresse.de>'),
26
array('Subject', 'German Umlauts öäü <adresse@adresse.de>'),
27
array('Subject', 'Short ASCII subject'),
28
array('Subject', 'Long ASCII subject - multiline space separated words - too long for one line'),
29
array('Subject', 'Short Unicode ż subject'),
30
array('Subject', 'Long Unicode subject - zażółć gęślą jaźń - too long for one line'),
31
array('References', '<hglvja$jg7$1@nemesis.news.neostrada.pl>  <4b2e87ac$1@news.home.net.pl> <hgm5b1$3a7$1@atlantis.news.neostrada.pl>'),
32
array('To', '"Frank Do" <adresse@adresse.de>,, "James Clark" <james@domain.com>'),
33
array('To', '"Frank \\" \\\\Do" <adresse@adresse.de>'),
34
array('To', 'Frank " \\Do <adresse@adresse.de>'),
35
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"),
36
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!!!?"),
37
array('Subject', "Update: Microsoft Windows-Tool zum Entfernen bösartiger Software 3.6"),
38
array('From', "test@nàme <user@domain.com>"),
39
array('From', "Test <\"test test\"@domain.com>"),
40
array('From', "\"test test\"@domain.com"),
41
array('From', "<\"test test\"@domain.com>"),
42
);
43
 
44
$i = 1;
45
foreach ($headers as $header) {
46
    $hdr = $mime->encodeHeader($header[0], $header[1], 'UTF-8', 'base64');
47
    printf("[%02d] %s: %s\n", $i, $header[0], $hdr);
48
    $hdr = $mime->encodeHeader($header[0], $header[1], 'UTF-8', 'quoted-printable');
49
    printf("[%02d] %s: %s\n", $i, $header[0], $hdr);
50
    $i++;
51
}
52
?>
53
--EXPECT--
54
[01] From: <adresse@adresse.de>
55
[01] From: <adresse@adresse.de>
56
[02] From: adresse@adresse.de
57
[02] From: adresse@adresse.de
58
[03] From: Frank Do <adresse@adresse.de>
59
[03] From: Frank Do <adresse@adresse.de>
60
[04] To: Frank Do <adresse@adresse.de>, James Clark <james@domain.com>
61
[04] To: Frank Do <adresse@adresse.de>, James Clark <james@domain.com>
62
[05] From: "Frank Do" <adresse@adresse.de>
63
[05] From: "Frank Do" <adresse@adresse.de>
64
[06] Cc: "Frank Do" <adresse@adresse.de>, "James Clark" <james@domain.com>
65
[06] Cc: "Frank Do" <adresse@adresse.de>, "James Clark" <james@domain.com>
66
[07] Cc: <adresse@adresse.de>, =?UTF-8?B?S3XFm21pZGVyc2tpIEphbiBLcnp5c3p0b2Yg?=
67
 =?UTF-8?B?SmFudXN6IETFgnVnYSBuYXp3YQ==?= <cris@domain.com>
68
[07] Cc: <adresse@adresse.de>,
69
 =?UTF-8?Q?Ku=C5=9Bmiderski_Jan_Krzysztof_Janusz_D?=
70
 =?UTF-8?Q?=C5=82uga_nazwa?= <cris@domain.com>
71
[08] From: "adresse@adresse.de" <addresse@adresse>
72
[08] From: "adresse@adresse.de" <addresse@adresse>
73
[09] From: "adresse@adresse.de" <addresse@adresse>
74
[09] From: "adresse@adresse.de" <addresse@adresse>
75
[10] From: =?UTF-8?B?R2VybWFuIFVtbGF1dHMgw7bDpMO8?= <adresse@adresse.de>
76
[10] From: =?UTF-8?Q?German_Umlauts_=C3=B6=C3=A4=C3=BC?= <adresse@adresse.de>
77
[11] Subject: =?UTF-8?B?R2VybWFuIFVtbGF1dHMgw7bDpMO8IDxhZHJlc3NlQGFkcmVzc2Uu?=
78
 =?UTF-8?B?ZGU+?=
79
[11] Subject: =?UTF-8?Q?German_Umlauts_=C3=B6=C3=A4=C3=BC_=3Cadresse=40adresse?=
80
 =?UTF-8?Q?=2Ede=3E?=
81
[12] Subject: Short ASCII subject
82
[12] Subject: Short ASCII subject
83
[13] Subject: Long ASCII subject - multiline space separated words - too long for
84
 one line
85
[13] Subject: Long ASCII subject - multiline space separated words - too long for
86
 one line
87
[14] Subject: =?UTF-8?B?U2hvcnQgVW5pY29kZSDFvCBzdWJqZWN0?=
88
[14] Subject: =?UTF-8?Q?Short_Unicode_=C5=BC_subject?=
89
[15] Subject: =?UTF-8?B?TG9uZyBVbmljb2RlIHN1YmplY3QgLSB6YcW8w7PFgsSHIGfEmcWb?=
90
 =?UTF-8?B?bMSFIGphxbrFhCAtIHRvbyBsb25nIGZvciBvbmUgbGluZQ==?=
91
[15] Subject: =?UTF-8?Q?Long_Unicode_subject_-_za=C5=BC=C3=B3=C5=82=C4=87_g=C4?=
92
 =?UTF-8?Q?=99=C5=9Bl=C4=85_ja=C5=BA=C5=84_-_too_long_for_one_line?=
93
[16] References: <hglvja$jg7$1@nemesis.news.neostrada.pl>
94
 <4b2e87ac$1@news.home.net.pl> <hgm5b1$3a7$1@atlantis.news.neostrada.pl>
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
[17] To: "Frank Do" <adresse@adresse.de>, "James Clark" <james@domain.com>
98
[17] To: "Frank Do" <adresse@adresse.de>, "James Clark" <james@domain.com>
99
[18] To: "Frank \" \\Do" <adresse@adresse.de>
100
[18] To: "Frank \" \\Do" <adresse@adresse.de>
101
[19] To: "Frank \" \\Do" <adresse@adresse.de>
102
[19] To: "Frank \" \\Do" <adresse@adresse.de>
103
[20] Subject: A REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY
104
 REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY
105
 REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY
106
 REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY /REALLY/ LONG test
107
[20] Subject: A REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY
108
 REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY
109
 REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY
110
 REALLY REALLY REALLY REALLY REALLY REALLY REALLY REALLY /REALLY/ LONG test
111
[21] Subject: =?UTF-8?B?VEVTVCBTw7xwZXIgZ3LDtnNlIHRvbGxlIGdyw7zDn2Ugdm9uIG1p?=
112
 =?UTF-8?B?ciBTw7xwZXIgZ3LDtnNlIHRvbGxlIGdyw7zDn2Ugdm9uIG1pciBTw7xwZXIg?=
113
 =?UTF-8?B?Z3LDtnNlIHRvbGxlIGdyw7zDn2Ugdm9uIG1pciBTw7xwZXIgZ3LDtnNlIHRv?=
114
 =?UTF-8?B?bGxlIGdyw7zDn2Ugdm9uIG1pciBTw7xwZXIgZ3LDtnNlIHRvbGxlIGdyw7zD?=
115
 =?UTF-8?B?n2Ugdm9uIG1pciBTw7xwZXIgZ3LDtnNlIHRvbGxlIGdyw7zDn2Ugdm9uIG1p?=
116
 =?UTF-8?B?ciBTw7xwZXIgZ3LDtnNlIHRvbGxlIGdyw7zDn2Ugdm9uIG1pciBTw7xwZXIg?=
117
 =?UTF-8?B?Z3LDtnNlIHRvbGxlIGdyw7zDn2Ugdm9uIG1pciBTw7xwZXIgZ3LDtnNlIHRv?=
118
 =?UTF-8?B?bGxlIGdyw7zDn2Ugdm9uIG1pciEhIT8=?=
119
[21] Subject: =?UTF-8?Q?TEST_S=C3=BCper_gr=C3=B6se_tolle_gr=C3=BC=C3=9Fe_von_mir?=
120
 =?UTF-8?Q?_S=C3=BCper_gr=C3=B6se_tolle_gr=C3=BC=C3=9Fe_von_mir_S=C3=BCper_g?=
121
 =?UTF-8?Q?r=C3=B6se_tolle_gr=C3=BC=C3=9Fe_von_mir_S=C3=BCper_gr=C3=B6se_tol?=
122
 =?UTF-8?Q?le_gr=C3=BC=C3=9Fe_von_mir_S=C3=BCper_gr=C3=B6se_tolle_gr=C3=BC?=
123
 =?UTF-8?Q?=C3=9Fe_von_mir_S=C3=BCper_gr=C3=B6se_tolle_gr=C3=BC=C3=9Fe_von_m?=
124
 =?UTF-8?Q?ir_S=C3=BCper_gr=C3=B6se_tolle_gr=C3=BC=C3=9Fe_von_mir_S=C3=BCper?=
125
 =?UTF-8?Q?_gr=C3=B6se_tolle_gr=C3=BC=C3=9Fe_von_mir_S=C3=BCper_gr=C3=B6se_t?=
126
 =?UTF-8?Q?olle_gr=C3=BC=C3=9Fe_von_mir!!!=3F?=
127
[22] Subject: =?UTF-8?B?VXBkYXRlOiBNaWNyb3NvZnQgV2luZG93cy1Ub29sIHp1bSBFbnRm?=
128
 =?UTF-8?B?ZXJuZW4gYsO2c2FydGlnZXIgU29mdHdhcmUgMy42?=
129
[22] Subject: =?UTF-8?Q?Update=3A_Microsoft_Windows-Tool_zum_Entfernen_b=C3=B6sa?=
130
 =?UTF-8?Q?rtiger_Software_3=2E6?=
131
[23] From: =?UTF-8?B?dGVzdEBuw6BtZQ==?= <user@domain.com>
132
[23] From: =?UTF-8?Q?test=40n=C3=A0me?= <user@domain.com>
133
[24] From: Test <"test test"@domain.com>
134
[24] From: Test <"test test"@domain.com>
135
[25] From: "test test"@domain.com
136
[25] From: "test test"@domain.com
137
[26] From: <"test test"@domain.com>
138
[26] From: <"test test"@domain.com>