18
18
use Symfony \Component \Form \Extension \Validator \Constraints \Form ;
19
19
use Symfony \Component \Form \Extension \Validator \Constraints \FormValidator ;
20
20
use Symfony \Component \Form \SubmitButtonBuilder ;
21
+ use Symfony \Component \Validator \Constraints \GroupSequence ;
21
22
use Symfony \Component \Validator \Constraints \NotNull ;
22
23
use Symfony \Component \Validator \Constraints \NotBlank ;
23
24
use Symfony \Component \Validator \Tests \Constraints \AbstractConstraintValidatorTest ;
@@ -73,8 +74,7 @@ public function testValidate()
73
74
->setData ($ object )
74
75
->getForm ();
75
76
76
- $ this ->expectValidateAt (0 , 'data ' , $ object , 'group1 ' );
77
- $ this ->expectValidateAt (1 , 'data ' , $ object , 'group2 ' );
77
+ $ this ->expectValidateAt (0 , 'data ' , $ object , array ('group1 ' , 'group2 ' ));
78
78
79
79
$ this ->validator ->validate ($ form , new Form ());
80
80
@@ -96,12 +96,11 @@ public function testValidateConstraints()
96
96
->getForm ();
97
97
98
98
// First default constraints
99
- $ this ->expectValidateAt (0 , 'data ' , $ object , 'group1 ' );
100
- $ this ->expectValidateAt (1 , 'data ' , $ object , 'group2 ' );
99
+ $ this ->expectValidateAt (0 , 'data ' , $ object , array ('group1 ' , 'group2 ' ));
101
100
102
101
// Then custom constraints
103
- $ this ->expectValidateValueAt (2 , 'data ' , $ object , $ constraint1 , 'group1 ' );
104
- $ this ->expectValidateValueAt (3 , 'data ' , $ object , $ constraint2 , 'group2 ' );
102
+ $ this ->expectValidateValueAt (1 , 'data ' , $ object , $ constraint1 , 'group1 ' );
103
+ $ this ->expectValidateValueAt (2 , 'data ' , $ object , $ constraint2 , 'group2 ' );
105
104
106
105
$ this ->validator ->validate ($ form , new Form ());
107
106
@@ -135,7 +134,7 @@ public function testMissingConstraintIndex()
135
134
$ form = new FormBuilder ('name ' , '\stdClass ' , $ this ->dispatcher , $ this ->factory );
136
135
$ form = $ form ->setData ($ object )->getForm ();
137
136
138
- $ this ->expectValidateAt (0 , 'data ' , $ object , 'Default ' );
137
+ $ this ->expectValidateAt (0 , 'data ' , $ object , array ( 'Default ' ) );
139
138
140
139
$ this ->validator ->validate ($ form , new Form ());
141
140
@@ -347,15 +346,29 @@ function () { throw new TransformationFailedException(); }
347
346
}
348
347
349
348
public function testHandleCallbackValidationGroups ()
349
+ {
350
+ $ object = $ this ->getMock ('\stdClass ' );
351
+ $ options = array ('validation_groups ' => new GroupSequence (array ('group1 ' , 'group2 ' )));
352
+ $ form = $ this ->getBuilder ('name ' , '\stdClass ' , $ options )
353
+ ->setData ($ object )
354
+ ->getForm ();
355
+
356
+ $ this ->expectValidateAt (0 , 'data ' , $ object , new GroupSequence (array ('group1 ' , 'group2 ' )));
357
+
358
+ $ this ->validator ->validate ($ form , new Form ());
359
+
360
+ $ this ->assertNoViolation ();
361
+ }
362
+
363
+ public function testHandleGroupSequenceValidationGroups ()
350
364
{
351
365
$ object = $ this ->getMock ('\stdClass ' );
352
366
$ options = array ('validation_groups ' => array ($ this , 'getValidationGroups ' ));
353
367
$ form = $ this ->getBuilder ('name ' , '\stdClass ' , $ options )
354
368
->setData ($ object )
355
369
->getForm ();
356
370
357
- $ this ->expectValidateAt (0 , 'data ' , $ object , 'group1 ' );
358
- $ this ->expectValidateAt (1 , 'data ' , $ object , 'group2 ' );
371
+ $ this ->expectValidateAt (0 , 'data ' , $ object , array ('group1 ' , 'group2 ' ));
359
372
360
373
$ this ->validator ->validate ($ form , new Form ());
361
374
@@ -370,7 +383,7 @@ public function testDontExecuteFunctionNames()
370
383
->setData ($ object )
371
384
->getForm ();
372
385
373
- $ this ->expectValidateAt (0 , 'data ' , $ object , 'header ' );
386
+ $ this ->expectValidateAt (0 , 'data ' , $ object , array ( 'header ' ) );
374
387
375
388
$ this ->validator ->validate ($ form , new Form ());
376
389
@@ -387,8 +400,7 @@ public function testHandleClosureValidationGroups()
387
400
->setData ($ object )
388
401
->getForm ();
389
402
390
- $ this ->expectValidateAt (0 , 'data ' , $ object , 'group1 ' );
391
- $ this ->expectValidateAt (1 , 'data ' , $ object , 'group2 ' );
403
+ $ this ->expectValidateAt (0 , 'data ' , $ object , array ('group1 ' , 'group2 ' ));
392
404
393
405
$ this ->validator ->validate ($ form , new Form ());
394
406
@@ -414,7 +426,7 @@ public function testUseValidationGroupOfClickedButton()
414
426
415
427
$ parent ->submit (array ('name ' => $ object , 'submit ' => '' ));
416
428
417
- $ this ->expectValidateAt (0 , 'data ' , $ object , 'button_group ' );
429
+ $ this ->expectValidateAt (0 , 'data ' , $ object , array ( 'button_group ' ) );
418
430
419
431
$ this ->validator ->validate ($ form , new Form ());
420
432
@@ -440,7 +452,7 @@ public function testDontUseValidationGroupOfUnclickedButton()
440
452
441
453
$ form ->setData ($ object );
442
454
443
- $ this ->expectValidateAt (0 , 'data ' , $ object , 'form_group ' );
455
+ $ this ->expectValidateAt (0 , 'data ' , $ object , array ( 'form_group ' ) );
444
456
445
457
$ this ->validator ->validate ($ form , new Form ());
446
458
@@ -464,7 +476,7 @@ public function testUseInheritedValidationGroup()
464
476
465
477
$ form ->setData ($ object );
466
478
467
- $ this ->expectValidateAt (0 , 'data ' , $ object , 'group ' );
479
+ $ this ->expectValidateAt (0 , 'data ' , $ object , array ( 'group ' ) );
468
480
469
481
$ this ->validator ->validate ($ form , new Form ());
470
482
@@ -488,8 +500,7 @@ public function testUseInheritedCallbackValidationGroup()
488
500
489
501
$ form ->setData ($ object );
490
502
491
- $ this ->expectValidateAt (0 , 'data ' , $ object , 'group1 ' );
492
- $ this ->expectValidateAt (1 , 'data ' , $ object , 'group2 ' );
503
+ $ this ->expectValidateAt (0 , 'data ' , $ object , array ('group1 ' , 'group2 ' ));
493
504
494
505
$ this ->validator ->validate ($ form , new Form ());
495
506
@@ -515,8 +526,7 @@ public function testUseInheritedClosureValidationGroup()
515
526
516
527
$ form ->setData ($ object );
517
528
518
- $ this ->expectValidateAt (0 , 'data ' , $ object , 'group1 ' );
519
- $ this ->expectValidateAt (1 , 'data ' , $ object , 'group2 ' );
529
+ $ this ->expectValidateAt (0 , 'data ' , $ object , array ('group1 ' , 'group2 ' ));
520
530
521
531
$ this ->validator ->validate ($ form , new Form ());
522
532
@@ -530,7 +540,7 @@ public function testAppendPropertyPath()
530
540
->setData ($ object )
531
541
->getForm ();
532
542
533
- $ this ->expectValidateAt (0 , 'data ' , $ object , 'Default ' );
543
+ $ this ->expectValidateAt (0 , 'data ' , $ object , array ( 'Default ' ) );
534
544
535
545
$ this ->validator ->validate ($ form , new Form ());
536
546
0 commit comments