summaryrefslogtreecommitdiff
path: root/tests/maildecode.php
diff options
context:
space:
mode:
authoralecpl <alec@alec.pl>2011-01-20 07:39:26 +0000
committeralecpl <alec@alec.pl>2011-01-20 07:39:26 +0000
commit6c68cbde375cd425ed98c037e2fa964aca552744 (patch)
tree2c3fa4fd97bee0a3b9facc64a01d240029d84cc1 /tests/maildecode.php
parentbc374503bba543bf62caa7f3dcf27b837cb929a0 (diff)
- Fix handling of comments inside an email address spec. (#1487673)
Diffstat (limited to 'tests/maildecode.php')
-rw-r--r--tests/maildecode.php45
1 files changed, 31 insertions, 14 deletions
diff --git a/tests/maildecode.php b/tests/maildecode.php
index cfd7eda2f..8d359a5b6 100644
--- a/tests/maildecode.php
+++ b/tests/maildecode.php
@@ -35,28 +35,45 @@ class rcube_test_maildecode extends UnitTestCase
8 => '"Test<Test" <test@domain.tld>',
9 => '=?ISO-8859-1?B?VGVzdAo=?= <test@domain.tld>',
10 => '=?ISO-8859-1?B?VGVzdAo=?=<test@domain.tld>', // #1487068
+ // comments in address (#1487673)
+ 11 => 'Test (comment) <test@domain.tld>',
+ 12 => '"Test" (comment) <test@domain.tld>',
+ 13 => '"Test (comment)" (comment) <test@domain.tld>',
+ 14 => '(comment) <test@domain.tld>',
+ 15 => 'Test <test@(comment)domain.tld>',
+ 16 => 'Test Test ((comment)) <test@domain.tld>',
+ 17 => 'test@domain.tld (comment)',
+ 18 => '"Test,Test" <test@domain.tld>',
);
$results = array(
- 0 => array('', 'test@domain.tld'),
- 1 => array('', 'test@domain.tld'),
- 2 => array('Test', 'test@domain.tld'),
- 3 => array('Test Test', 'test@domain.tld'),
- 4 => array('Test Test', 'test@domain.tld'),
- 5 => array('Test Test', 'test@domain.tld'),
- 6 => array('Test Test', 'test@domain.tld'),
- 7 => array('Test " Test', 'test@domain.tld'),
- 8 => array('Test<Test', 'test@domain.tld'),
- 9 => array('Test', 'test@domain.tld'),
- 10 => array('Test', 'test@domain.tld'),
+ 0 => array(1, '', 'test@domain.tld'),
+ 1 => array(1, '', 'test@domain.tld'),
+ 2 => array(1, 'Test', 'test@domain.tld'),
+ 3 => array(1, 'Test Test', 'test@domain.tld'),
+ 4 => array(1, 'Test Test', 'test@domain.tld'),
+ 5 => array(1, 'Test Test', 'test@domain.tld'),
+ 6 => array(1, 'Test Test', 'test@domain.tld'),
+ 7 => array(1, 'Test " Test', 'test@domain.tld'),
+ 8 => array(1, 'Test<Test', 'test@domain.tld'),
+ 9 => array(1, 'Test', 'test@domain.tld'),
+ 10 => array(1, 'Test', 'test@domain.tld'),
+ 11 => array(1, 'Test', 'test@domain.tld'),
+ 12 => array(1, 'Test', 'test@domain.tld'),
+ 13 => array(1, 'Test (comment)', 'test@domain.tld'),
+ 14 => array(1, '', 'test@domain.tld'),
+ 15 => array(1, 'Test', 'test@domain.tld'),
+ 16 => array(1, 'Test Test', 'test@domain.tld'),
+ 17 => array(1, '', 'test@domain.tld'),
+ 18 => array(1, 'Test,Test', 'test@domain.tld'),
);
foreach ($headers as $idx => $header) {
$res = $this->app->imap->decode_address_list($header);
- $this->assertEqual(1, count($res), "Rows number in result for header: " . $header);
- $this->assertEqual($results[$idx][0], $res[1]['name'], "Name part decoding for header: " . $header);
- $this->assertEqual($results[$idx][1], $res[1]['mailto'], "Name part decoding for header: " . $header);
+ $this->assertEqual($results[$idx][0], count($res), "Rows number in result for header: " . $header);
+ $this->assertEqual($results[$idx][1], $res[1]['name'], "Name part decoding for header: " . $header);
+ $this->assertEqual($results[$idx][2], $res[1]['mailto'], "Name part decoding for header: " . $header);
}
}