test
[bioperl-run.git] / t / Kalign.t
bloba850186a54134a700d97ca304e3314ac432a1bf3
1 # -*-Perl-*-
2 ## Bioperl Test Harness Script for Modules
4 use strict;
5 use vars qw($NUMTESTS);
6 BEGIN { 
7     eval { require Test; };
8     if( $@ ) {
9         use lib 't';
10     }
11     use Test;
13     $NUMTESTS = 6; 
14     plan tests => $NUMTESTS; 
17 END { unlink qw(cysprot.dnd cysprot1a.dnd) }
19 use Bio::Tools::Run::Alignment::Kalign;
20 use Bio::AlignIO;
21 use Bio::SeqIO;
22 use Bio::Root::IO;
24 END {     
25     for ( $Test::ntest..$NUMTESTS ) {
26         skip("Kalign program not found. Skipping.\n",1);
27     }
30 ok(1);
32 my @params = ();
33 my $factory = Bio::Tools::Run::Alignment::Kalign->new(@params);
34 my $inputfilename = Bio::Root::IO->catfile("t","data","cysprot.fa");
35 my $aln;
37 my $present = $factory->executable();
38 unless ($present && -e $present ) {
39     warn "amap program not found. Skipping tests $Test::ntest to $NUMTESTS.\n";
40     exit(0);
42 my $version = $factory->version;
43 ok ($version >= 2, 1, "Code tested only on kalign versions >= 2" );
44 $aln = $factory->align($inputfilename);
45 ok($aln);
46 ok( $aln->no_sequences, 7);
48 my $str = Bio::SeqIO->new('-file' => 
49                           Bio::Root::IO->catfile("t","data","cysprot.fa"), 
50                           '-format' => 'Fasta');
51 my @seq_array =();
53 while ( my $seq = $str->next_seq() ) {
54     push (@seq_array, $seq) ;
57 my $seq_array_ref = \@seq_array;
59 $aln = $factory->align($seq_array_ref);
60 ok $aln->no_sequences, 7;
61 my $s1_perid = $aln->average_percentage_identity;
62 ok(int($s1_perid), 42);