10000 minor #13435 [Validator] fixed remaining notice (fabpot) · symfony/symfony@df76faa · GitHub
[go: up one dir, main page]

Skip to content

Commit df76faa

Browse files
committed
minor #13435 [Validator] fixed remaining notice (fabpot)
This PR was merged into the 2.7 branch. Discussion ---------- [Validator] fixed remaining notice | Q | A | ------------- | --- | Bug fix? | no | New feature? | no | BC breaks? | no | Deprecations? | no | Tests pass? | no | Fixed tickets | - | License | MIT | Doc PR | - Commits ------- 5fcfd1b [Validator] fixed some legacy tests f187d9a [Validator] fixed remaining notice
2 parents f0a185d + 5fcfd1b commit df76faa

File tree

2 files changed

+21
-8
lines changed

2 files changed

+21
-8
lines changed

src/Symfony/Component/Validator/Constraints/CollectionValidator.php

Lines changed: 15 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -90,12 +90,21 @@ public function validate($value, Constraint $constraint)
9090
if (!$constraint->allowExtraFields) {
9191
foreach ($value as $field => $fieldValue) {
9292
if (!isset($constraint->fields[$field])) {
93-
$this->buildViolationInContext($context, $constraint->extraFieldsMessage)
94-
->atPath('['.$field.']')
95-
->setParameter('{{ field }}', $this->formatValue($field))
96-
->setInvalidValue($fieldValue)
97-
->setCode(Collection::NO_SUCH_FIELD_ERROR)
98-
->addViolation();
93+
if ($context instanceof ExecutionContextInterface) {
94+
$context->buildViolation($constraint->extraFieldsMessage)
95+
->atPath('['.$field.']')
96+
->setParameter('{{ field }}', $this->formatValue($field))
97+
->setInvalidValue($fieldValue)
98+
->setCode(Collection::NO_SUCH_FIELD_ERROR)
99+
->addViolation();
100+
} else {
101+
$this->buildViolationInContext($context, $constraint->extraFieldsMessage)
102+
->atPath('['.$field.']')
103+
->setParameter('{{ field }}', $this->formatValue($field))
104+
->setInvalidValue($fieldValue)
105+
->setCode(Collection::NO_SUCH_FIELD_ERROR)
106+
->addViolation();
107+
}
99108
}
100109
}
101110
}

src/Symfony/Component/Validator/Tests/Mapping/MemberMetadataTest.php

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,17 +35,21 @@ protected function tearDown()
3535
$this->metadata = null;
3636
}
3737

38-
public function testAddValidSetsMemberToCascaded()
38+
public function testLegacyAddValidSetsMemberToCascaded()
3939
{
40+
$this->iniSet('error_reporting', -1 & ~E_USER_DEPRECATED);
41+
4042
$result = $this->metadata->addConstraint(new Valid());
4143

4244
$this->assertEquals(array(), $this->metadata->getConstraints());
4345
$this->assertEquals($result, $this->metadata);
4446
$this->assertTrue($this->metadata->isCascaded());
4547
}
4648

47-
public function testAddOtherConstraintDoesNotSetMemberToCascaded()
49+
public function testLegacyAddOtherConstraintDoesNotSetMemberToCascaded()
4850
{
51+
$this->iniSet('error_reporting', -1 & ~E_USER_DEPRECATED);
52+
4953
$result = $this->metadata->addConstraint($constraint = new ConstraintA());
5054

5155
$this->assertEquals(array($constraint), $this->metadata->getConstraints());

0 commit comments

Comments
 (0)
0