Example #1
0
 public function testProvidesInputSpecificationThatIncludesCustomValidator()
 {
     $element = new EmailElement();
     $validator = $this->getMock('Zend\\Validator\\ValidatorInterface');
     $element->setValidator($validator);
     $inputSpec = $element->getInputSpecification();
     $this->assertArrayHasKey('validators', $inputSpec);
     $this->assertInternalType('array', $inputSpec['validators']);
     $test = array_shift($inputSpec['validators']);
     $this->assertSame($validator, $test);
 }
Example #2
0
 /**
  * @dataProvider emailAttributesDataProvider
  */
 public function testProvidesInputSpecificationBasedOnAttributes($attributes, $expectedValidators)
 {
     $element = new EmailElement();
     $element->setAttributes($attributes);
     $inputSpec = $element->getInputSpecification();
     $this->assertArrayHasKey('validators', $inputSpec);
     $this->assertInternalType('array', $inputSpec['validators']);
     foreach ($inputSpec['validators'] as $i => $validator) {
         $class = get_class($validator);
         $this->assertEquals($expectedValidators[$i], $class);
         switch ($class) {
             case 'Zend\\Validator\\Explode':
                 $this->assertInstanceOf('Zend\\Validator\\Regex', $validator->getValidator());
                 break;
             default:
                 break;
         }
     }
 }
Example #3
0
 public function testProvidesInputSpecificationThatIncludesValidatorsBasedOnAttributes()
 {
     $element = new EmailElement();
     $element->setAttributes(array('multiple' => true));
     $inputSpec = $element->getInputSpecification();
     $this->assertArrayHasKey('validators', $inputSpec);
     $this->assertInternalType('array', $inputSpec['validators']);
     $expectedClasses = array('Zend\\Validator\\Explode');
     foreach ($inputSpec['validators'] as $validator) {
         $class = get_class($validator);
         $this->assertTrue(in_array($class, $expectedClasses), $class);
         switch ($class) {
             case 'Zend\\Validator\\Explode':
                 $this->assertInstanceOf('Zend\\Validator\\EmailAddress', $validator->getValidator());
                 break;
             default:
                 break;
         }
     }
 }