示例#1
0
 public function testProvidesInputSpecificationThatIncludesValidator()
 {
     $element = new RangeElement();
     $element->setAttributes(array('inclusive' => true, 'min' => 2, 'max' => 102, 'step' => 2));
     $inputSpec = $element->getInputSpecification();
     $this->assertArrayHasKey('validators', $inputSpec);
     $this->assertInternalType('array', $inputSpec['validators']);
     $expectedClasses = array('Zend\\I18n\\Validator\\Float', 'Zend\\Validator\\GreaterThan', 'Zend\\Validator\\LessThan', 'Zend\\Validator\\Step');
     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(2, $validator->getMin());
                 break;
             case 'Zend\\Validator\\LessThan':
                 $this->assertTrue($validator->getInclusive());
                 $this->assertEquals(102, $validator->getMax());
                 break;
             case 'Zend\\Validator\\Step':
                 $this->assertEquals(2, $validator->getStep());
                 break;
             default:
                 break;
         }
     }
 }