@@ -113,10 +113,45 @@ protected function createContext()
113
113
$ context ->setNode ($ this ->value , $ this ->object , $ this ->metadata , $ this ->propertyPath );
114
114
$ context ->setConstraint ($ this ->constraint );
115
115
116
+ $ contextualValidator = $ this ->getMockBuilder (AssertingContextualValidator::class)
117
+ ->setConstructorArgs ([$ context ])
118
+ ->setMethods ([
119
+ 'atPath ' ,
120
+ 'validate ' ,
121
+ 'validateProperty ' ,
122
+ 'validatePropertyValue ' ,
123
+ 'getViolations ' ,
124
+ ])
125
+ ->getMock ();
126
+ $ contextualValidator ->expects ($ this ->any ())
127
+ ->method ('atPath ' )
128
+ ->willReturnCallback (function ($ path ) use ($ contextualValidator ) {
129
+ return $ contextualValidator ->doAtPath ($ path );
130
+ });
131
+ $ contextualValidator ->expects ($ this ->any ())
132
+ ->method ('validate ' )
133
+ ->willReturnCallback (function ($ value , $ constraints = null , $ groups = null ) use ($ contextualValidator ) {
134
+ return $ contextualValidator ->doValidate ($ value , $ constraints , $ groups );
135
+ });
136
+ $ contextualValidator ->expects ($ this ->any ())
137
+ ->method ('validateProperty ' )
138
+ ->willReturnCallback (function ($ object , $ propertyName , $ groups = null ) use ($ contextualValidator ) {
139
+ return $ contextualValidator ->validateProperty ($ object , $ propertyName , $ groups );
140
+ });
141
+ $ contextualValidator ->expects ($ this ->any ())
142
+ ->method ('validatePropertyValue ' )
143
+ ->willReturnCallback (function ($ objectOrClass , $ propertyName , $ value , $ groups = null ) use ($ contextualValidator ) {
144
+ return $ contextualValidator ->doValidatePropertyValue ($ objectOrClass , $ propertyName , $ value , $ groups );
145
+ });
146
+ $ contextualValidator ->expects ($ this ->any ())
147
+ ->method ('getViolations ' )
148
+ ->willReturnCallback (function () use ($ contextualValidator ) {
149
+ return $ contextualValidator ->doGetViolations ();
150
+ });
116
151
$ validator ->expects ($ this ->any ())
117
152
->method ('inContext ' )
118
153
->with ($ context )
119
- ->willReturn ($ this -> getMockBuilder (AssertingContextualValidator::class)-> setConstructorArgs ([ $ context ])-> setMethods ( null )-> getMock () );
154
+ ->willReturn ($ contextualValidator );
120
155
121
156
return $ context ;
122
157
}
@@ -403,6 +438,10 @@ public function __construct(ExecutionContextInterface $context)
403
438
}
404
439
405
440
public function atPath ($ path )
441
+ {
442
+ }
443
+
444
+ public function doAtPath ($ path )
406
445
{
407
446
Assert::assertFalse ($ this ->expectNoValidate , 'No validation calls have been expected. ' );
408
447
@@ -416,6 +455,10 @@ public function atPath($path)
416
455
}
417
456
418
457
public function validate ($ value , $ constraints = null , $ groups = null )
458
+ {
459
+ }
460
+
461
+ public function doValidate ($ value , $ constraints = null , $ groups = null )
419
462
{
420
463
Assert::assertFalse ($ this ->expectNoValidate , 'No validation calls have been expected. ' );
421
464
@@ -437,11 +480,19 @@ public function validate($value, $constraints = null, $groups = null)
437
480
}
438
481
439
482
public function validateProperty ($ object , $ propertyName , $ groups = null )
483
+ {
484
+ }
485
+
486
+ public function doValidateProperty ($ object , $ propertyName , $ groups = null )
440
487
{
441
488
return $ this ;
442
489
}
443
490
444
491
public function validatePropertyValue ($ objectOrClass , $ propertyName , $ value , $ groups = null )
492
+ {
493
+ }
494
+
495
+ public function doValidatePropertyValue ($ objectOrClass , $ propertyName , $ value , $ groups = null )
445
496
{
446
497
return $ this ;
447
498
}
@@ -451,6 +502,10 @@ public function getViolations()
451
502
return $ this ->context ->getViolations ();
452
503
}
453
504
505
+ public function doGetViolations ()
506
+ {
507
+ }
508
+
454
509
public function expectNoValidate ()
455
510
{
456
511
$ this ->expectNoValidate = true ;
0 commit comments