2 ## Bioperl Test Harness Script for Modules
7 eval { require Test; };
14 plan tests => $NTESTS;
17 use Bio::Tools::Run::TribeMCL;
21 for ( $Test::ntest..$NTESTS ) {
22 skip("TribeMCL program not found. Skipping. (Be sure you have the TribeMCL package",1);
27 require "Algorithm/Diff.pm";
30 warn("Need Algorithm::Diff to run TribeMCL");
34 my $blast_out = Bio::Root::IO->catfile("t","data","TribeMCL.bls");
36 #do from raw blast output
37 my @params=('inputtype'=>'blastfile',I=>'3.0');
38 my $fact = Bio::Tools::Run::TribeMCL->new(@params);
41 warn("Couldn't create a TribeMCL wrapper");
44 my $desc = Bio::Root::IO->catfile("t","data","TribeMCL.desc");
45 $fact->description_file($desc);
47 ok $fact->isa('Bio::Tools::Run::TribeMCL');
48 unless ($fact->matrix_executable){
49 warn("Tribe Matrix program not found. Skipping tests $Test::ntest to $NTESTS.\n");
52 unless ($fact->mcl_executable){
53 warn("Markov Clustering program not found. Skipping tests $Test::ntest to $NTESTS.\n");
58 $fact->quiet($bequiet);
60 my ($fam) = $fact->run($blast_out);
61 my @members = $fam->get_members;
62 ok $fam->isa("Bio::Cluster::SequenceFamily");
63 ok $members[0]->isa("Bio::Seq");
64 ok ($members[0]->id, 'ENSANGP00000008485');
65 ok ($members[1]->id, 'ENSDRMP3263');
66 ok ($members[2]->id, 'ENSMUSP00000026170');
67 ok ($fam->description,'ubiquitin');
68 ok ($fam->annotation_score,45.0549450549451);
73 my $sio = Bio::SearchIO->new(-format=>'blast',
76 @params=('inputtype'=>'searchio',I=>'3.0');
77 $fact = Bio::Tools::Run::TribeMCL->new(@params);
78 $fact->description_file($desc);
80 ok $fact->isa('Bio::Tools::Run::TribeMCL');
82 $fact->quiet($bequiet);
84 ($fam) = $fact->run($sio);
85 ok $fam->isa("Bio::Cluster::SequenceFamily");
86 ok $members[0]->isa("Bio::Seq");
87 ok ($members[0]->id, 'ENSANGP00000008485');
88 ok ($members[1]->id, 'ENSDRMP3263');
89 ok ($members[2]->id, 'ENSMUSP00000026170');
90 ok ($fam->description,'ubiquitin');
91 ok ($fam->annotation_score,45.0549450549451);
94 @params=('inputtype'=>'pairs',I=>'3.0');
95 $fact = Bio::Tools::Run::TribeMCL->new(@params);
96 ok $fact->isa('Bio::Tools::Run::TribeMCL');
98 $fact->quiet($bequiet);
100 ($fam) = $fact->run( [[qw(ENSP00000257547 ENSP00000261659 1 50)],
101 [qw(O42187 ENSP00000257547 1 119)]]);
102 @members = $fam->get_members;
103 ok ($members[0]->id, 'ENSP00000257547');
104 ok ($members[1]->id, 'ENSP00000261659');
105 ok ($members[2]->id, 'O42187');