8000 keep the context when validating forms · symfony/symfony@317da3b · GitHub
[go: up one dir, main page]

Skip to content

Commit 317da3b

Browse files
committed
keep the context when validating forms
1 parent 4f47bb7 commit 317da3b

File tree

2 files changed

+4
-0
lines changed

2 files changed

+4
-0
lines changed

src/Symfony/Component/Form/Extension/Validator/Constraints/FormValidator.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -124,6 +124,7 @@ public function validate($form, Constraint $constraint)
124124
: gettype($form->getViewData());
125125

126126
if ($this->context instanceof ExecutionContextInterface) {
127+
$this->context->setConstraint($constraint);
127128
$this->context->buildViolation($config->getOption('invalid_message'))
128129
->setParameters(array_replace(array('{{ value }}' => $clientDataAsString), $config->getOption('invalid_message_parameters')))
129130
->setInvalidValue($form->getViewData())
@@ -144,6 +145,7 @@ public function validate($form, Constraint $constraint)
144145
// Mark the form with an error if it contains extra fields
145146
if (!$config->getOption('allow_extra_fields') && count($form->getExtraData()) > 0) {
146147
if ($this->context instanceof ExecutionContextInterface) {
148+
$this->context->setConstraint($constraint);
147149
$this->context->buildViolation($config->getOption('extra_fields_message'))
148150
->setParameter('{{ extra_fields }}', implode('", "', array_keys($form->getExtraData())))
149151
->setInvalidValue($form->getExtraData())

src/Symfony/Component/Form/Tests/Extension/Validator/Constraints/FormValidatorTest.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,8 @@ protected function setUp()
5151
$this->serverParams = $this->getMockBuilder('Symfony\Component\Form\Extension\Validator\Util\ServerParams')->setMethods(array('getNormalizedIniPostMaxSize', 'getContentLength'))->getMock();
5252

5353
parent::setUp();
54+
55+
$this->constraint = new Form();
5456
}
5557

5658
protected function getApiVersion()

0 commit comments

Comments
 (0)
0