@@ -360,4 +360,41 @@ public function testHandleMWithultipleAttributesShouldBeHandledAsAnd()
360360
361361 $ listener (new RequestEvent ($ this ->createMock (HttpKernelInterface::class), $ request , HttpKernelInterface::MAIN_REQUEST ));
362362 }
363+
364+ public function testLazyPublicPagesShouldNotAccessTokenStorage ()
365+ {
366+ $ tokenStorage = $ this ->createMock (TokenStorageInterface::class);
367+ $ tokenStorage ->expects ($ this ->never ())->method ('getToken ' );
368+
369+ $ request = new Request ();
370+ $ accessMap = $ this ->createMock (AccessMapInterface::class);
371+ $ accessMap ->expects ($ this ->any ())
372+ ->method ('getPatterns ' )
373+ ->with ($ this ->equalTo ($ request ))
374+ ->willReturn ([[AuthenticatedVoter::PUBLIC_ACCESS ], null ])
375+ ;
376+
377+ $ listener = new AccessListener ($ tokenStorage , $ this ->createMock (AccessDecisionManagerInterface::class), $ accessMap , $ this ->createMock (AuthenticationManagerInterface::class), false );
378+ $ listener (new LazyResponseEvent (new RequestEvent ($ this ->createMock (HttpKernelInterface::class), $ request , HttpKernelInterface::MAIN_REQUEST )));
379+ }
380+
381+ /**
382+ * @group legacy
383+ */
384+ public function testLegacyLazyPublicPagesShouldNotAccessTokenStorage ()
385+ {
386+ $ tokenStorage = $ this ->createMock (TokenStorageInterface::class);
387+ $ tokenStorage ->expects ($ this ->never ())->method ('getToken ' );
388+
389+ $ request = new Request ();
390+ $ accessMap = $ this ->createMock (AccessMapInterface::class);
391+ $ accessMap ->expects ($ this ->any ())
392+ ->method ('getPatterns ' )
393+ ->with ($ this ->equalTo ($ request ))
394+ ->willReturn ([[AuthenticatedVoter::IS_AUTHENTICATED_ANONYMOUSLY ], null ])
395+ ;
396+
397+ $ listener = new AccessListener ($ tokenStorage , $ this ->createMock (AccessDecisionManagerInterface::class), $ accessMap , $ this ->createMock (AuthenticationManagerInterface::class), false );
398+ $ listener (new LazyResponseEvent (new RequestEvent ($ this ->createMock (HttpKernelInterface::class), $ request , HttpKernelInterface::MAIN_REQUEST )));
399+ }
363400}
0 commit comments