protected function createContext() { $context = parent::createContext(); $validator = $context->getValidator(); /** @var \PHPUnit_Framework_MockObject_MockObject $contextualValidator */ $contextualValidator = $validator->inContext($context); $contextualValidator->expects($this->any())->method('validate')->will($this->returnCallback(function ($value, UniqueProperty $constraint) use($context) { $context->buildViolation($constraint->message)->setParameter('%property%', $constraint->field)->setParameter('%entity%', $constraint->entity)->setParameter('%value%', $value)->setCode(UniqueProperty::NON_UNIQUE_PROPERTY)->addViolation(); })); return $context; }
/** * {@inheritdoc} */ protected function createContext() { $context = parent::createContext(); $validator = $context->getValidator(); /** @var \PHPUnit_Framework_MockObject_MockObject $contextualValidator */ $contextualValidator = $validator->inContext($context); $contextualValidator->expects($this->any())->method('validate')->will($this->returnCallback(function ($value, Choice $choice) use($context) { if (!in_array($value, $choice->choices, true)) { $context->buildViolation($choice->message)->setParameter('{{ value }}', $value)->setCode(Choice::NO_SUCH_CHOICE_ERROR)->addViolation(); } })); return $context; }