Neos\Flow\Validation\Validator\ConjunctionValidator::validate PHP Method

validate() public method

Every validator has to be valid, to make the whole conjunction valid.
public validate ( mixed $value ) : Neos\Error\Messages\Result
$value mixed The value that should be validated
return Neos\Error\Messages\Result
    public function validate($value)
    {
        $validators = $this->getValidators();
        if ($validators->count() > 0) {
            $result = null;
            foreach ($validators as $validator) {
                if ($result === null) {
                    $result = $validator->validate($value);
                } else {
                    $result->merge($validator->validate($value));
                }
            }
        } else {
            $result = new ErrorResult();
        }
        return $result;
    }

Usage Example

 /**
  * @test
  */
 public function validatorConjunctionReturnsErrorsIfOneValidatorReturnsErrors()
 {
     $validatorConjunction = new ConjunctionValidator([]);
     $validatorObject = $this->createMock(ValidatorInterface::class);
     $errors = new Error\Result();
     $errors->addError(new Error\Error('Error', 123));
     $validatorObject->expects($this->any())->method('validate')->will($this->returnValue($errors));
     $validatorConjunction->addValidator($validatorObject);
     $this->assertTrue($validatorConjunction->validate('some subject')->hasErrors());
 }
All Usage Examples Of Neos\Flow\Validation\Validator\ConjunctionValidator::validate
ConjunctionValidator