Organize the test suite
[sgn.git] / t / integration / cview_map.t
blobc4d168507067e7db9a50bc50b834a9cb85688fac
1 use strict;
2 use warnings;
4 use lib 't/lib';
5 use SGN::Test::WWW::Mechanize;
6 use Test::More;
8 my $m = SGN::Test::WWW::Mechanize->new();
10 my $tests = 0;
12 $m->get_ok("/cview/");
13 $tests++;
14 $m->content_contains("Interactive maps");
15 $tests++;
16 my @map_links = $m->find_all_links( url_regex => qr/map.pl/ );
18 foreach my $map (@map_links) {
19     my $link_text = $map->text();
21     # skip maps with non-numeric ids if local data not available
22     #
23     if ($map->url =~ /map.*?id=[a-zA-Z]+/ && $m->test_level() ne 'local') { 
24         diag("Skipping $link_text\n");
25         next();
26     }
28     $m->follow_link_ok( { text => $map->text() } );
29     $tests++;
31     $m->content_contains("Map statistics");
32     $tests++;
34     my @chr_links = $m->find_all_links( url_regex => qr/view_chromosome.pl/ );
36 #    if (@chr_links) { $m->follow_link_ok({ text=>$chr_links[0]->text() }); $tests++;}
37 #    $tests++;
39     $m->back();
41     if ( $m->content() =~ /Overlay/ ) {
42         my %form = (
43             form_name => 'overlay_form',
44             fields    => {
45                 map_id => 9,
46                 hilite => "1 50 foo",
47                 force  => 1,
48             }
49         );
50         $m->submit_form_ok( \%form, "submit overlay form" );
51         $tests++;
52         $m->back();
53     }
55     $m->back();
58 done_testing($tests);