email = new Email(); $this->email->email2init(); } public function tearDown() { unset($this->email); SugarTestUserUtilities::removeAllCreatedAnonymousUsers(); unset($GLOBALS['current_user']); } public function testSafeAttachmentName () { $extArray[] = '0.py'; $extArray[] = '1.php'; $extArray[] = '2.php3'; $extArray[] = '3.php4'; $extArray[] = '4.php5'; $extArray[] = '5.js'; $extArray[] = '6.htm'; $extArray[] = '7.html'; $extArray[] = '8.txt'; $extArray[] = '9.doc'; $extArray[] = '10.xls'; $extArray[] = '11.pdf'; $extArray[] = '12'; for ($i = 0; $i < count($extArray); $i++) { $result = $this->email->safeAttachmentName($extArray[$i]); if ($i < 8) { $this->assertEquals($result, true); } else { $this->assertEquals($result, false); } } } public function testEmail2ParseAddresses() { $emailDisplayName[] = ''; $emailDisplayName[] = 'Shine Ye'; $emailDisplayName[] = 'Roger,Smith'; $emailAddress[] = 'masonhu@sugarcrm.com'; $emailAddress[] = 'xye@sugarcrm.com'; $emailAddress[] = 'roger@sugarcrm.com'; for ($j = 0; $j < count($emailDisplayName); $j++) { if ($j < 1) $emailString[] = $emailDisplayName[$j].$emailAddress[$j]; else $emailString[] = $emailDisplayName[$j].'<'.$emailAddress[$j].'>'; } $emailAddressString = implode(', ', $emailString); $result = $this->email->email2ParseAddresses($emailAddressString); $onlyEmailResult = $this->email->email2ParseAddressesForAddressesOnly($emailAddressString); for ($v = 0; $v < count($result); $v++) { $this->assertEquals($result[$v]['display'], $emailDisplayName[$v]); $this->assertEquals($result[$v]['email'], $emailAddress[$v]); $this->asserteQuals($onlyEmailResult[$v], $emailAddress[$v]); } } public function testDecodeDuringSend() { $testString = 'Replace sugarLessThan and sugarGreaterThan with < and >'; $expectedResult = 'Replace < and > with < and >'; $resultString = $this->email->decodeDuringSend($testString); $this->asserteQuals($resultString, $expectedResult); } } ?>