/** * @param Generic\EnumConstraint $constraint * * @return string */ public function visitEnumConstraint(Generic\EnumConstraint $constraint) { $enumValues = array(); foreach ($constraint->values() as $enumValue) { $enumValues[] = var_export($enumValue->value(), true); } if (count($enumValues) < 2) { return sprintf('The value must be equal to %s.', array_pop($enumValues)); } return sprintf('The value must be equal to one of the following: %s.', implode(', ', $enumValues)); }
/** * @param Generic\EnumConstraint $constraint * * @return Result\ValidationResult */ public function visitEnumConstraint(Generic\EnumConstraint $constraint) { $value = $this->currentValue(); foreach ($constraint->values() as $enumValue) { if ($this->comparator()->equals($value, $enumValue)) { return $this->createResult(); } } return $this->createSingleIssueResult($constraint); }