Example #1
0
 public function testProvidesInputSpecificationThatIncludesValidatorsBasedOnAttributes()
 {
     $element = new DateElement('foo');
     $element->setAttributes(array('inclusive' => true, 'min' => '2000-01-01', 'max' => '2001-01-01', 'step' => '1'));
     $inputSpec = $element->getInputSpecification();
     $this->assertArrayHasKey('validators', $inputSpec);
     $this->assertInternalType('array', $inputSpec['validators']);
     $expectedClasses = array('Zend\\Validator\\Date', 'Zend\\Validator\\GreaterThan', 'Zend\\Validator\\LessThan', 'Zend\\Validator\\DateStep');
     foreach ($inputSpec['validators'] as $validator) {
         $class = get_class($validator);
         $this->assertTrue(in_array($class, $expectedClasses), $class);
         switch ($class) {
             case 'Zend\\Validator\\GreaterThan':
                 $this->assertTrue($validator->getInclusive());
                 $this->assertEquals('2000-01-01', $validator->getMin());
                 break;
             case 'Zend\\Validator\\LessThan':
                 $this->assertTrue($validator->getInclusive());
                 $this->assertEquals('2001-01-01', $validator->getMax());
                 break;
             case 'Zend\\Validator\\DateStep':
                 $dateInterval = new \DateInterval('P1D');
                 $this->assertEquals($dateInterval, $validator->getStep());
                 $this->assertEquals('2000-01-01', $validator->getBaseValue());
                 break;
             default:
                 break;
         }
     }
 }
Example #2
0
 public function testCorrectFormatPassedToDateValidator()
 {
     $element = new DateElement('foo');
     $element->setAttributes(array('min' => '2012-01-01', 'max' => '2012-12-31'));
     $element->setFormat('d-m-Y');
     $inputSpec = $element->getInputSpecification();
     foreach ($inputSpec['validators'] as $validator) {
         switch (get_class($validator)) {
             case 'Zend\\Validator\\DateStep':
             case 'Zend\\Validator\\Date':
                 $this->assertEquals('d-m-Y', $validator->getFormat());
                 break;
         }
     }
 }