/**
  * Testing validateMxSupported
  */
 public function testValidateMxSupported()
 {
     if (function_exists('getmxrr')) {
         $this->assertTrue($this->_validator->validateMxSupported());
     } else {
         $this->assertFalse($this->_validator->validateMxSupported());
     }
 }
 /**
  * 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()));
         }
     }
 }