Loading core/tests/Drupal/Tests/Core/Menu/DefaultMenuLinkTreeManipulatorsTest.php +14 −5 Original line number Diff line number Diff line Loading @@ -49,6 +49,13 @@ class DefaultMenuLinkTreeManipulatorsTest extends UnitTestCase { */ protected $defaultMenuTreeManipulators; /** * Mock cache context manager. * * @var \Drupal\Core\Cache\Context\CacheContextsManager|\Prophecy\Prophecy\ObjectProphecy */ protected $cacheContextManager; /** * The original menu tree build in mockTree(). * Loading Loading @@ -77,12 +84,9 @@ protected function setUp(): void { $this->defaultMenuTreeManipulators = new DefaultMenuLinkTreeManipulators($this->accessManager, $this->currentUser, $this->entityTypeManager); $cache_contexts_manager = $this->prophesize(CacheContextsManager::class); $cache_contexts_manager->assertValidTokens()->willReturn(TRUE); $cache_contexts_manager->reveal(); $this->cacheContextManager = $this->prophesize(CacheContextsManager::class); $container = new Container(); $container->set('cache_contexts_manager', $cache_contexts_manager); $container->set('cache_contexts_manager', $this->cacheContextManager->reveal()); \Drupal::setContainer($container); } Loading Loading @@ -163,6 +167,7 @@ public function testCheckAccess() { // performed. 9 routes, but 1 is external, 2 already have their 'access' // property set, and 1 is a child if an inaccessible menu link, so only 5 // calls will be made. $this->cacheContextManager->assertValidTokens(['user.permissions'])->shouldBeCalled()->willReturn(TRUE); $this->accessManager->expects($this->exactly(5)) ->method('checkNamedRoute') ->willReturnMap([ Loading @@ -187,6 +192,7 @@ public function testCheckAccess() { $this->mockTree(); $this->originalTree[5]->subtree[7]->access = AccessResult::neutral(); $this->cacheContextManager->assertValidTokens(['user'])->shouldBeCalled()->willReturn(TRUE); $this->originalTree[8]->access = AccessResult::allowed()->cachePerUser(); // Since \Drupal\Core\Menu\DefaultMenuLinkTreeManipulators::checkAccess() Loading Loading @@ -250,6 +256,7 @@ public function testCheckAccessWithLinkToAnyPagePermission() { ->willReturn(TRUE); $this->mockTree(); $this->cacheContextManager->assertValidTokens(['user.permissions'])->shouldBeCalled()->willReturn(TRUE); $this->defaultMenuTreeManipulators->checkAccess($this->originalTree); $expected_access_result = AccessResult::allowed()->cachePerPermissions(); Loading Loading @@ -324,6 +331,8 @@ public function testCheckNodeAccess() { ->with('node') ->willReturn($storage); $this->cacheContextManager->assertValidTokens(['user.permissions'])->shouldBeCalled()->willReturn(TRUE); $this->cacheContextManager->assertValidTokens(['user.permissions', 'user.node_grants:view'])->shouldBeCalled()->willReturn(TRUE); $node_access_result = AccessResult::allowed()->cachePerPermissions()->addCacheContexts(['user.node_grants:view']); $tree = $this->defaultMenuTreeManipulators->checkNodeAccess($tree); Loading Loading
core/tests/Drupal/Tests/Core/Menu/DefaultMenuLinkTreeManipulatorsTest.php +14 −5 Original line number Diff line number Diff line Loading @@ -49,6 +49,13 @@ class DefaultMenuLinkTreeManipulatorsTest extends UnitTestCase { */ protected $defaultMenuTreeManipulators; /** * Mock cache context manager. * * @var \Drupal\Core\Cache\Context\CacheContextsManager|\Prophecy\Prophecy\ObjectProphecy */ protected $cacheContextManager; /** * The original menu tree build in mockTree(). * Loading Loading @@ -77,12 +84,9 @@ protected function setUp(): void { $this->defaultMenuTreeManipulators = new DefaultMenuLinkTreeManipulators($this->accessManager, $this->currentUser, $this->entityTypeManager); $cache_contexts_manager = $this->prophesize(CacheContextsManager::class); $cache_contexts_manager->assertValidTokens()->willReturn(TRUE); $cache_contexts_manager->reveal(); $this->cacheContextManager = $this->prophesize(CacheContextsManager::class); $container = new Container(); $container->set('cache_contexts_manager', $cache_contexts_manager); $container->set('cache_contexts_manager', $this->cacheContextManager->reveal()); \Drupal::setContainer($container); } Loading Loading @@ -163,6 +167,7 @@ public function testCheckAccess() { // performed. 9 routes, but 1 is external, 2 already have their 'access' // property set, and 1 is a child if an inaccessible menu link, so only 5 // calls will be made. $this->cacheContextManager->assertValidTokens(['user.permissions'])->shouldBeCalled()->willReturn(TRUE); $this->accessManager->expects($this->exactly(5)) ->method('checkNamedRoute') ->willReturnMap([ Loading @@ -187,6 +192,7 @@ public function testCheckAccess() { $this->mockTree(); $this->originalTree[5]->subtree[7]->access = AccessResult::neutral(); $this->cacheContextManager->assertValidTokens(['user'])->shouldBeCalled()->willReturn(TRUE); $this->originalTree[8]->access = AccessResult::allowed()->cachePerUser(); // Since \Drupal\Core\Menu\DefaultMenuLinkTreeManipulators::checkAccess() Loading Loading @@ -250,6 +256,7 @@ public function testCheckAccessWithLinkToAnyPagePermission() { ->willReturn(TRUE); $this->mockTree(); $this->cacheContextManager->assertValidTokens(['user.permissions'])->shouldBeCalled()->willReturn(TRUE); $this->defaultMenuTreeManipulators->checkAccess($this->originalTree); $expected_access_result = AccessResult::allowed()->cachePerPermissions(); Loading Loading @@ -324,6 +331,8 @@ public function testCheckNodeAccess() { ->with('node') ->willReturn($storage); $this->cacheContextManager->assertValidTokens(['user.permissions'])->shouldBeCalled()->willReturn(TRUE); $this->cacheContextManager->assertValidTokens(['user.permissions', 'user.node_grants:view'])->shouldBeCalled()->willReturn(TRUE); $node_access_result = AccessResult::allowed()->cachePerPermissions()->addCacheContexts(['user.node_grants:view']); $tree = $this->defaultMenuTreeManipulators->checkNodeAccess($tree); Loading