/** * Ensures that the validator follows expected behavior for checking MX records * * @return void */ public function testMXRecords() { if (!defined('TESTS_ZEND_VALIDATE_ONLINE_ENABLED') || !constant('TESTS_ZEND_VALIDATE_ONLINE_ENABLED')) { $this->markTestSkipped('Testing MX records only works when a valid internet connection is available'); return; } $validator = new Zend_Validate_EmailAddress(Zend_Validate_Hostname::ALLOW_DNS, true); // Are MX checks supported by this system? if (!$validator->validateMxSupported()) { $this->markTestSkipped('Testing MX records is not supported with this configuration'); return; } $valuesExpected = array(array(true, array('*****@*****.**', '*****@*****.**')), array(false, array('*****@*****.**', '*****@*****.**'))); foreach ($valuesExpected as $element) { foreach ($element[1] as $input) { $this->assertEquals($element[0], $validator->isValid($input), implode("\n", $validator->getMessages())); } } // Try a check via setting the option via a method unset($validator); $validator = new Zend_Validate_EmailAddress(); $validator->setValidateMx(true); foreach ($valuesExpected as $element) { foreach ($element[1] as $input) { $this->assertEquals($element[0], $validator->isValid($input), implode("\n", $validator->getMessages())); } } }
/** * Ensures that the validator follows expected behavior for checking MX records * * @return void */ public function testMXRecords() { $validator = new Zend_Validate_EmailAddress(Zend_Validate_Hostname::ALLOW_DNS, true); // Are MX checks supported by this system? if (!$validator->validateMxSupported()) { return true; } $valuesExpected = array(array(true, array('*****@*****.**', '*****@*****.**')), array(false, array('*****@*****.**', '*****@*****.**'))); foreach ($valuesExpected as $element) { foreach ($element[1] as $input) { $this->assertEquals($element[0], $validator->isValid($input), implode("\n", $validator->getMessages())); } } // Try a check via setting the option via a method unset($validator); $validator = new Zend_Validate_EmailAddress(); $validator->setValidateMx(true); foreach ($valuesExpected as $element) { foreach ($element[1] as $input) { $this->assertEquals($element[0], $validator->isValid($input), implode("\n", $validator->getMessages())); } } }
/** * @group GH-62 */ public function testIdnHostnameInEmaillAddress() { if (version_compare(PHP_VERSION, '5.3.0', '<')) { $this->markTestSkipped('idn_to_ascii() is available in intl in PHP 5.3.0+'); } $validator = new Zend_Validate_EmailAddress(); $validator->setValidateMx(true); $this->assertTrue($validator->isValid('testmail@detrèsbonsdomaines.com')); }