Example #1
0
 function it_throws_an_exception_when_a_model_validator_fails(Argument $model, ModelValidator $modelValidator)
 {
     $violationCollection = new ViolationCollection();
     $violationCollection->add(new SomeViolation('Invalid model'));
     $invalidModelException = 'Memio\\Exception\\InvalidModelException';
     $modelValidator->supports($model)->willReturn(true);
     $modelValidator->validate($model)->willReturn($violationCollection);
     $this->shouldThrow($invalidModelException)->duringValidate($model);
 }
Example #2
0
 /**
  * @param mixed $model
  *
  * @throws \Memio\Validator\Exception\InvalidModelException If model is invalid
  */
 public function validate($model)
 {
     $violations = new ViolationCollection();
     foreach ($this->modelValidators as $modelValidator) {
         if ($modelValidator->supports($model)) {
             $violations->merge($modelValidator->validate($model));
         }
     }
     $violations->raise();
 }