From 6c68cbde375cd425ed98c037e2fa964aca552744 Mon Sep 17 00:00:00 2001 From: alecpl Date: Thu, 20 Jan 2011 07:39:26 +0000 Subject: - Fix handling of comments inside an email address spec. (#1487673) --- tests/maildecode.php | 45 +++++++++++++++++++++++++++++++-------------- 1 file changed, 31 insertions(+), 14 deletions(-) (limited to 'tests') 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', 9 => '=?ISO-8859-1?B?VGVzdAo=?= ', 10 => '=?ISO-8859-1?B?VGVzdAo=?=', // #1487068 + // comments in address (#1487673) + 11 => 'Test (comment) ', + 12 => '"Test" (comment) ', + 13 => '"Test (comment)" (comment) ', + 14 => '(comment) ', + 15 => 'Test ', + 16 => 'Test Test ((comment)) ', + 17 => 'test@domain.tld (comment)', + 18 => '"Test,Test" ', ); $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 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 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); } } -- cgit v1.2.3