Example #1
0
 public function testFormatCustomMessage()
 {
     $options = array('with' => '[alpha]', 'message' => 'has to be made of letters');
     $validation = Mad_Model_Validation_Base::factory('format', 'string_value', $options);
     $this->model->string_value = 'abc123';
     $validation->validate('save', $this->model);
     $this->assertEquals(array('has to be made of letters'), $this->model->errors->on('string_value'));
 }
Example #2
0
 public function testFactoryUniqueness()
 {
     $validation = Mad_Model_Validation_Base::factory('uniqueness', '', array());
     $this->assertTrue($validation instanceof Mad_Model_Validation_Uniqueness);
 }
Example #3
0
 /**
  * Add a validation rule to this controller
  *
  * @param   string       $type
  * @param   string|array $attributes
  * @param   array        $options
  */
 protected function _addValidation($type, $attributes, $options)
 {
     foreach ((array) $attributes as $attribute) {
         $this->_validations[] = Mad_Model_Validation_Base::factory($type, $attribute, $options);
     }
 }
Example #4
0
 public function testLengthCustomWrongLength()
 {
     $options = array('is' => 5, 'wrongLength' => 'is totally wrong. must be %d');
     $validation = Mad_Model_Validation_Base::factory('length', 'string_value', $options);
     $this->model->string_value = 'abcd';
     $validation->validate('save', $this->model);
     $this->assertEquals(array('is totally wrong. must be 5'), $this->model->errors->on('string_value'));
 }
Example #5
0
 public function testUniqueCustomMessage()
 {
     $this->fixtures('unit_tests');
     $options = array('message' => 'already exists. Choose another');
     $validation = Mad_Model_Validation_Base::factory('uniqueness', 'string_value', $options);
     $this->model->string_value = 'name a';
     $validation->validate('save', $this->model);
     $this->assertEquals(array('already exists. Choose another'), $this->model->errors->on('string_value'));
 }
Example #6
0
 public function testNumericalityCustomMessage()
 {
     $options = array('message' => 'has to be un numero!');
     $validation = Mad_Model_Validation_Base::factory('numericality', 'integer_value', $options);
     $this->model->integer_value = 'abc';
     $validation->validate('save', $this->model);
     $this->assertEquals(array('has to be un numero!'), $this->model->errors->on('integer_value'));
 }
Example #7
0
 public function testPresenceCustomMessage()
 {
     $options = array('message' => 'is empty foo!');
     $validation = Mad_Model_Validation_Base::factory('presence', 'string_value', $options);
     $this->model->string_value = '';
     $validation->validate('save', $this->model);
     $this->assertEquals(array('is empty foo!'), $this->model->errors->on('string_value'));
 }
Example #8
0
 public function testValidateCanDisplayCustomMessage()
 {
     $options = array('in' => array('bar'), 'message' => 'custom');
     $validator = Mad_Model_Validation_Base::factory('inclusion', 'string_value', $options);
     $this->model->string_value = 'foo';
     $validator->validate('save', $this->model);
     $this->assertEquals(array('custom'), $this->model->errors->on('string_value'));
 }