8 my ( $baseurl, $m ) = RT::Test->started_ok;
10 ok( $m->login( 'root' => 'password' ), 'login as root' );
12 my %viewed = ( '/NoAuth/Logout.html' => 1 ); # in case logout
14 my $user = RT::User->new($RT::SystemUser);
16 ok( $user->id, 'loaded root' );
18 my $queue = RT::Queue->new($RT::SystemUser);
19 $queue->Load('General');
20 ok( $queue->id, 'loaded General queue' );
22 my $group = RT::Group->new($RT::SystemUser);
23 ok( $group->CreateUserDefinedGroup( Name => 'group_foo' ) );
24 my $cf = RT::CustomField->new($RT::SystemUser);
29 LookupType => 'RT::Queue-RT::Ticket',
32 ok( $cf->id, 'created cf_foo' );
34 my $class = RT::Class->new($RT::SystemUser);
35 ok( $class->Create( Name => 'class_foo' ) );
36 ok( $class->id, 'created class_foo' );
38 # to make search have results
39 my $open_ticket = RT::Test->create_ticket(
40 Subject => 'ticket_foo',
44 my $resolved_ticket = RT::Test->create_ticket(
45 Subject => 'ticket_bar',
52 '/Admin/Users/Modify.html?id=' . $user->id,
53 '/Admin/Groups/Modify.html?id=' . $group->id,
54 '/Admin/Queues/Modify.html?id=' . $queue->id,
55 '/Admin/CustomFields/Modify.html?id=' . $cf->id,
56 '/Admin/Scrips/Modify.html?id=1',
57 '/Admin/Global/Template.html?Template=1',
58 '/Admin/Articles/Classes/Modify.html?id=' . $class->id,
59 '/Search/Build.html?Query=id<10',
60 '/Ticket/Display.html?id=' . $open_ticket->id,
61 '/Ticket/Display.html?id=' . $resolved_ticket->id,
64 for my $link (@links) {
68 $m->get_ok('/NoAuth/Logout.html');
73 $m->get_ok( $link, $link );
74 $m->no_warnings_ok($link);
76 my $tree = HTML::TreeBuilder->new();
77 $tree->parse( $m->content );
79 my ($top_menu) = $tree->look_down( id => 'main-navigation' );
80 my ($page_menu) = $tree->look_down( id => 'page-navigation' );
83 grep { !$viewed{$_}++ && /^[^#]/ }
84 map { $_->attr('href') || () } ( $top_menu ? $top_menu->find('a') : () ),
85 ( $page_menu ? $page_menu->find('a') : () );
87 for my $link (@links) {