Example #1
0
 /**
  * data must be an array containing:
  * - subject: string
  * - from: string
  * - body: string
  * - testTo: string/mail
  *
  * to must be an array containing list of email addresses.
  *
  * @param array $data
  * @return $this
  */
 private function validate(array $data)
 {
     $dio = $this->dio = $this->factory->on($data);
     $dio->asText('subject')->required();
     $dio->asText('body')->required();
     $dio->asMail('from')->required();
     $dio->asMail('testTo')->required();
     $dio->asMail('mailTo')->required();
     return $this;
 }
Example #2
0
 /**
  * @test
  */
 function filter_min_value()
 {
     $factory = new ValidationFactory();
     $v = $factory->on(['int' => '100', 'big' => '101', 'bad' => '12345678901234567890123456789012345678901234567890']);
     $v->asInteger('int')->min(101);
     $v->asInteger('big')->min(101);
     $value1 = $v->get('int');
     $value2 = $v->get('big');
     $this->assertEquals(false, $value1);
     $this->assertEquals('101', $value2);
     $this->assertEquals('below min value', $v->message('int'));
 }
Example #3
0
 /**
  * @test
  */
 function test2()
 {
     $rule0 = $this->factory->rules()->withType('text');
     $rule1 = $this->factory->rules()->withType('text');
     $this->assertEquals($rule0, $rule1);
     $this->assertNotSame($rule0, $rule1);
 }
Example #4
0
 /**
  * @test
  */
 function requiredIf_after_rule_is_applyed()
 {
     $input = ['flag' => 'A', 'done' => ''];
     $this->validate->source($input);
     $this->validate->asText('flag');
     $this->validate->asText('done')->requiredIf('flag', ['a']);
     $this->assertEquals(true, $this->validate->passes());
     $input = ['flag' => 'A', 'done' => ''];
     $validation = $this->factory->on($input);
     $validation->asText('flag')->string('lower');
     $validation->asText('done')->requiredIf('flag', ['a']);
     $this->assertEquals(true, $validation->fails());
     $this->assertEquals('required item', $validation->message('done'));
 }
Example #5
0
 /**
  * @test
  */
 function closure_with_error()
 {
     /**
      * @param ValueTO $v
      */
     $filter = function ($v) {
         $val = $v->getValue();
         $val .= ':bad';
         $v->setValue($val);
         $v->setError(__METHOD__);
         $v->setMessage('Closure with Error');
     };
     $found = $this->verify->is('test', $this->factory->rules()->withType('text')->custom($filter));
     $this->assertEquals(false, $found);
     /** @var ValueTO $valTo */
     $valTo = $this->verify->apply('test', $this->factory->rules()->withType('text')->custom($filter));
     $this->assertTrue($valTo->fails());
     $this->assertTrue($valTo->getBreak());
     $this->assertEquals('test:bad', $valTo->getValue());
     $this->assertEquals('Closure with Error', $valTo->message());
 }
Example #6
0
 public function setUp()
 {
     $factory = new ValidationFactory();
     $this->validate = $factory->verify();
 }