1 # This is -*-Perl-*- code#
2 # Bioperl Test Harness Script for Modules#
3 # $Id: protgraph.t,v 1.1 2004/03/13 23:45:32 radams Exp
5 use vars qw($NUMTESTS $DEBUG $ERROR);
7 $DEBUG = $ENV{'BIOPERLDEBUG'} || 0;
10 # to handle systems with no installed Test module
11 # we include the t dir (where a copy of Test.pm is located)
13 eval { require Test; };
20 plan tests => $NUMTESTS;
21 eval { require Graph; };
23 warn("Perl's Graph required by the bioperl-network package, skipping tests");
29 foreach ( $Test::ntest..$NUMTESTS) {
30 skip("Missing dependencies. Skipping tests",1);
33 exit 0 if $ERROR == 1;
35 require Graph::Undirected;
36 require Graph::Traversal::DFS;
40 # The purpose of these tests is to check to see if bugs have been
41 # fixed in Perl's Graph, particularly if refvertexed == 1
43 my $g = Graph::Undirected->new(refvertexed => 1);
47 my $seq1 = Bio::Seq->new(-seq => "aaaaaaa");
48 my $seq2 = Bio::Seq->new(-seq => "ttttttt");
49 my $seq3 = Bio::Seq->new(-seq => "ccccccc");
50 my $seq4 = Bio::Seq->new(-seq => "ggggggg");
52 $g->add_vertices($seq1,$seq2,$seq3,$seq4);
53 $g->add_edges([$seq1,$seq2],[$seq3,$seq4],[$seq3,$seq2]);
55 my @vs = $g->vertices;
62 my $comp = $g->complement;
63 @vs = $comp->vertices;
66 @vs = $g->interior_vertices;
69 my $apsp = $g->APSP_Floyd_Warshall;
70 @vs = $apsp->path_vertices($seq1,$seq4);
73 my $seq = $g->random_vertex;
76 my $t = Graph::Traversal::DFS->new($g);
83 # Still an intermittent bug
84 # @vs = $g->articulation_points;
85 # ok $vs[0]->seq; # not OK in Graph v. .80
88 my @cc = $g->connected_components;
98 my $cg = $g->connected_graph;
100 # ok $vs[0]->seq; incorrect usage
102 my @spd = $g->SP_Dijkstra($seq1,$seq4);
104 my @spbf = $g->SP_Bellman_Ford($seq1,$seq4);