[Validator] Allow validating multiple groups in one GroupSequence step
This commit is contained in:
parent
3847badd47
commit
31b609e582
@ -57,7 +57,7 @@ class GroupSequence
|
||||
/**
|
||||
* The groups in the sequence.
|
||||
*
|
||||
* @var string[]|GroupSequence[]
|
||||
* @var string[]|array[]|GroupSequence[]
|
||||
*/
|
||||
public $groups;
|
||||
|
||||
|
@ -1212,6 +1212,20 @@ abstract class AbstractValidatorTest extends \PHPUnit_Framework_TestCase
|
||||
'Violation in Group 2',
|
||||
),
|
||||
),
|
||||
array(
|
||||
'sequence' => new GroupSequence(array('Group 1', array('Group 2', 'Group 3'), 'Entity')),
|
||||
'assertViolations' => array(
|
||||
'Violation in Group 2',
|
||||
'Violation in Group 3',
|
||||
),
|
||||
),
|
||||
array(
|
||||
'sequence' => array('Group 1', array('Group 2', 'Group 3'), 'Entity'),
|
||||
'assertViolations' => array(
|
||||
'Violation in Group 2',
|
||||
'Violation in Group 3',
|
||||
),
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
@ -773,7 +773,7 @@ class RecursiveContextualValidator implements ContextualValidatorInterface
|
||||
$cascadedGroups = $cascadedGroup ? array($cascadedGroup) : null;
|
||||
|
||||
foreach ($groupSequence->groups as $groupInSequence) {
|
||||
$groups = array($groupInSequence);
|
||||
$groups = (array) $groupInSequence;
|
||||
|
||||
if ($metadata instanceof ClassMetadataInterface) {
|
||||
$this->validateClassNode(
|
||||
|
Reference in New Issue
Block a user