function MenuLinksUnitTestCase::createLinkHierarchy

Create a simple hierarchy of links.

2 calls to MenuLinksUnitTestCase::createLinkHierarchy()
MenuLinksUnitTestCase::testMenuLinkReparenting in modules/simpletest/tests/menu.test
Test automatic reparenting of menu links.
MenuLinksUnitTestCase::testMenuLinkRouterReparenting in modules/simpletest/tests/menu.test
Test automatic reparenting of menu links derived from menu routers.

File

modules/simpletest/tests/menu.test, line 689

Class

MenuLinksUnitTestCase
Tests for menu links.

Code

function createLinkHierarchy($module = 'menu_test') {
    // First remove all the menu links.
    db_truncate('menu_links')->execute();
    // Then create a simple link hierarchy:
    // - $parent
    //   - $child-1
    //      - $child-1-1
    //      - $child-1-2
    //   - $child-2
    $base_options = array(
        'link_title' => 'Menu link test',
        'module' => $module,
        'menu_name' => 'menu_test',
    );
    $links['parent'] = $base_options + array(
        'link_path' => 'menu-test/parent',
    );
    menu_link_save($links['parent']);
    $links['child-1'] = $base_options + array(
        'link_path' => 'menu-test/parent/child-1',
        'plid' => $links['parent']['mlid'],
    );
    menu_link_save($links['child-1']);
    $links['child-1-1'] = $base_options + array(
        'link_path' => 'menu-test/parent/child-1/child-1-1',
        'plid' => $links['child-1']['mlid'],
    );
    menu_link_save($links['child-1-1']);
    $links['child-1-2'] = $base_options + array(
        'link_path' => 'menu-test/parent/child-1/child-1-2',
        'plid' => $links['child-1']['mlid'],
    );
    menu_link_save($links['child-1-2']);
    $links['child-2'] = $base_options + array(
        'link_path' => 'menu-test/parent/child-2',
        'plid' => $links['parent']['mlid'],
    );
    menu_link_save($links['child-2']);
    return $links;
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.