public function MenuLinksTest::createLinkHierarchy in Drupal 10
Same name and namespace in other branches
- 8 core/modules/menu_link_content/tests/src/Kernel/MenuLinksTest.php \Drupal\Tests\menu_link_content\Kernel\MenuLinksTest::createLinkHierarchy()
- 9 core/modules/menu_link_content/tests/src/Kernel/MenuLinksTest.php \Drupal\Tests\menu_link_content\Kernel\MenuLinksTest::createLinkHierarchy()
Create a simple hierarchy of links.
File
- core/
modules/ menu_link_content/ tests/ src/ Kernel/ MenuLinksTest.php, line 63
Class
- MenuLinksTest
- Tests handling of menu links hierarchies.
Namespace
Drupal\Tests\menu_link_content\KernelCode
public function createLinkHierarchy($module = 'menu_test') {
// First remove all the menu links in the menu.
$this->menuLinkManager
->deleteLinksInMenu('menu_test');
// Then create a simple link hierarchy:
// - parent
// - child-1
// - child-1-1
// - child-1-2
// - child-2
$base_options = [
'title' => 'Menu link test',
'provider' => $module,
'menu_name' => 'menu_test',
];
$parent = $base_options + [
'link' => [
'uri' => 'internal:/menu-test/hierarchy/parent',
],
];
$link = MenuLinkContent::create($parent);
$link
->save();
$links['parent'] = $link
->getPluginId();
$child_1 = $base_options + [
'link' => [
'uri' => 'internal:/menu-test/hierarchy/parent/child',
],
'parent' => $links['parent'],
];
$link = MenuLinkContent::create($child_1);
$link
->save();
$links['child-1'] = $link
->getPluginId();
$child_1_1 = $base_options + [
'link' => [
'uri' => 'internal:/menu-test/hierarchy/parent/child2/child',
],
'parent' => $links['child-1'],
];
$link = MenuLinkContent::create($child_1_1);
$link
->save();
$links['child-1-1'] = $link
->getPluginId();
$child_1_2 = $base_options + [
'link' => [
'uri' => 'internal:/menu-test/hierarchy/parent/child2/child',
],
'parent' => $links['child-1'],
];
$link = MenuLinkContent::create($child_1_2);
$link
->save();
$links['child-1-2'] = $link
->getPluginId();
$child_2 = $base_options + [
'link' => [
'uri' => 'internal:/menu-test/hierarchy/parent/child',
],
'parent' => $links['parent'],
];
$link = MenuLinkContent::create($child_2);
$link
->save();
$links['child-2'] = $link
->getPluginId();
return $links;
}