entityManager = $this->container->get('entity.manager'); $this->menuLinkManager = $this->container->get('plugin.manager.menu.link'); $this->menuLinkOverrides = $this->container->get('menu_link.static.overrides'); } /** * Test views internal menu link options. */ public function testMenuLinkOverrides() { // Link from views module. $views_link = $this->menuLinkManager->getDefinition('views_view:views.test_page_display_menu.page_3'); $this->assertTrue($views_link['enabled'], 'Menu link is enabled.'); $this->assertFalse($views_link['expanded'], 'Menu link is not expanded.'); $views_link['enabled'] = 0; $views_link['expanded'] = 1; $this->menuLinkManager->updateDefinition($views_link['id'], $views_link); $views_link = $this->menuLinkManager->getDefinition($views_link['id']); $this->assertFalse($views_link['enabled'], 'Menu link is disabled.'); $this->assertTrue($views_link['expanded'], 'Menu link is expanded.'); $this->menuLinkManager->rebuild(); $this->assertFalse($views_link['enabled'], 'Menu link is disabled.'); $this->assertTrue($views_link['expanded'], 'Menu link is expanded.'); // Link from user module. $user_link = $this->menuLinkManager->getDefinition('user.page'); $this->assertTrue($user_link['enabled'], 'Menu link is enabled.'); $user_link['enabled'] = 0; $views_link['expanded'] = 1; $this->menuLinkManager->updateDefinition($user_link['id'], $user_link); $this->assertFalse($user_link['enabled'], 'Menu link is disabled.'); $this->menuLinkManager->rebuild(); $this->assertFalse($user_link['enabled'], 'Menu link is disabled.'); $this->menuLinkOverrides->reload(); $views_link = $this->menuLinkManager->getDefinition('views_view:views.test_page_display_menu.page_3'); $this->assertFalse($views_link['enabled'], 'Menu link is disabled.'); $this->assertTrue($views_link['expanded'], 'Menu link is expanded.'); $user_link = $this->menuLinkManager->getDefinition('user.page'); $this->assertFalse($user_link['enabled'], 'Menu link is disabled.'); } }