insertGetId([ 'name' => 'admin', 'priority' => 1, ]); $parentId = DB::table('nav_items')->insertGetId([ 'label' => 'Parent', 'url' => 'parent', 'sort_order' => 1, 'is_enabled' => 1, ]); $childId = DB::table('nav_items')->insertGetId([ 'label' => 'Child', 'url' => 'child', 'menu_parent_id' => $parentId, 'sort_order' => 2, 'is_enabled' => 1, ]); DB::table('role_nav_items')->insert([ ['role_id' => $roleId, 'nav_item_id' => $parentId], ['role_id' => $roleId, 'nav_item_id' => $childId], ]); $service = new NavbarService; $menu = $service->getMenuForRoles(['admin']); $this->assertCount(1, $menu); $this->assertSame('Parent', $menu[0]['label']); $this->assertCount(1, $menu[0]['children']); $this->assertSame('Child', $menu[0]['children'][0]['label']); } }