1414use PHPUnit \Framework \TestCase ;
1515use Symfony \Bundle \SecurityBundle \CacheWarmer \ExpressionCacheWarmer ;
1616use Symfony \Component \ExpressionLanguage \Expression ;
17+ use Symfony \Component \ExpressionLanguage \ParsedExpression ;
1718use Symfony \Component \Security \Core \Authorization \ExpressionLanguage ;
1819
1920class ExpressionCacheWarmerTest extends TestCase
@@ -22,13 +23,21 @@ public function testWarmUp()
2223 {
2324 $ expressions = [new Expression ('A ' ), new Expression ('B ' )];
2425
26+ $ series = [
27+ [$ expressions [0 ], ['token ' , 'user ' , 'object ' , 'subject ' , 'role_names ' , 'request ' , 'trust_resolver ' ]],
28+ [$ expressions [1 ], ['token ' , 'user ' , 'object ' , 'subject ' , 'role_names ' , 'request ' , 'trust_resolver ' ]],
29+ ];
30+
2531 $ expressionLang = $ this ->createMock (ExpressionLanguage::class);
2632 $ expressionLang ->expects ($ this ->exactly (2 ))
2733 ->method ('parse ' )
28- ->withConsecutive (
29- [$ expressions [0 ], ['token ' , 'user ' , 'object ' , 'subject ' , 'role_names ' , 'request ' , 'trust_resolver ' ]],
30- [$ expressions [1 ], ['token ' , 'user ' , 'object ' , 'subject ' , 'role_names ' , 'request ' , 'trust_resolver ' ]]
31- );
34+ ->willReturnCallback (function (...$ args ) use (&$ series ) {
35+ $ expectedArgs = array_shift ($ series );
36+ $ this ->assertSame ($ expectedArgs , $ args );
37+
38+ return $ this ->createMock (ParsedExpression::class);
39+ })
40+ ;
3241
3342 (new ExpressionCacheWarmer ($ expressions , $ expressionLang ))->warmUp ('' );
3443 }
0 commit comments