Exemplo n.º 1
0
 /**
  * @expectedException CM_Exception_FormFieldValidation
  */
 public function testValidate()
 {
     $environment = new CM_Frontend_Environment();
     $field = new CM_FormField_Float(['name' => 'foo']);
     $response = $this->getMockForAbstractClass('CM_Http_Response_Abstract', array(), '', false);
     /** @var CM_Http_Response_Abstract $response */
     $validationResult = $field->validate($environment, 1.3);
     $this->assertSame(1.3, $validationResult);
     $field->validate($environment, 'foo');
 }
Exemplo n.º 2
0
 public function testValidateMinMaxOptions()
 {
     $environment = new CM_Frontend_Environment();
     $field = new CM_FormField_Float(['name' => 'foo', 'min' => 1.3, 'max' => 2.5]);
     $this->assertSame(1.3, $field->validate($environment, 1.3));
     $this->assertInstanceOf('CM_Exception_FormFieldValidation', $this->catchException(function () use($field, $environment) {
         $field->validate($environment, 1.2);
     }));
     $this->assertInstanceOf('CM_Exception_FormFieldValidation', $this->catchException(function () use($field, $environment) {
         $field->validate($environment, 2.6);
     }));
 }
Exemplo n.º 3
0
 public function validate(CM_Frontend_Environment $environment, $userInput)
 {
     $userInput = parent::validate($environment, $userInput);
     $value = (int) $userInput;
     if ($value != $userInput) {
         throw new CM_Exception_FormFieldValidation(new CM_I18n_Phrase('Invalid integer'));
     }
     return $value;
 }