~ubuntu-branches/ubuntu/saucy/bioperl/saucy-proposed

« back to all changes in this revision

Viewing changes to t/Registry.t

  • Committer: Bazaar Package Importer
  • Author(s): Charles Plessy
  • Date: 2009-03-10 07:19:11 UTC
  • mfrom: (1.2.3 upstream)
  • Revision ID: james.westby@ubuntu.com-20090310071911-fukqzw54pyb1f0bd
Tags: 1.6.0-2
* Removed patch system (not used):
  - removed instuctions in debian/rules;
  - removed quilt from Build-Depends in debian/control.
* Re-enabled tests:
  - uncommented test command in debian/rules;
  - uncommented previously missing build-dependencies in debian/control.
  - Re-enabled tests and uncommented build-dependencies accordingly.
* Removed libmodule-build-perl and libtest-harness-perl from
  Build-Depends-Indep (provided by perl-modules).
* Better cleaning of empty directories using find -type d -empty -delete
  instead of rmdir in debian/rules (LP: #324001).

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
##-*-Perl-*-
2
 
# $Id: Registry.t,v 1.10.6.2 2006/11/30 09:24:00 sendu Exp $
3
 
# test for Bio::DB::Registry, Flat::BinarySearch, and Flat::BDB
4
 
# written by Brian Osborne
5
 
 
6
 
use strict;
7
 
use vars qw($NUMTESTS $old_search_path $no_DB_File $no_LWP $DEBUG);
8
 
 
9
 
use File::Spec;
10
 
 
11
 
BEGIN {
12
 
        $DEBUG = $ENV{BIOPERLDEBUG} || 0;
13
 
        eval { require Test; };
14
 
        if( $@ ) {
15
 
                use lib 't';
16
 
        }
17
 
        use Test;
18
 
        $no_DB_File = 0;
19
 
        $old_search_path = $ENV{OBDA_SEARCH_PATH} if defined $ENV{OBDA_SEARCH_PATH};
20
 
        $ENV{OBDA_SEARCH_PATH} = 't/data/registry/flat;t/data/registry/bdb';
21
 
        eval { require DB_File;
22
 
                         require BerkeleyDB;
23
 
                 };
24
 
        if ($@) {
25
 
                $ENV{OBDA_SEARCH_PATH} = 't/data/registry/flat';
26
 
                $no_DB_File = 1;
27
 
        }
28
 
        eval { require LWP::UserAgent;
29
 
                         require HTTP::Request::Common; };
30
 
        if( $@ ) {
31
 
                $no_LWP =1;
32
 
        }
33
 
        plan tests => ($NUMTESTS=13);
34
 
}
35
 
 
36
 
require Bio::DB::Registry;
37
 
use Bio::DB::Flat;
38
 
use Bio::Root::IO;
39
 
 
40
 
my $tmpdir = File::Spec->catfile(qw(t tmp));
41
 
mkdir($tmpdir,0777);
42
 
ok (-d $tmpdir);
43
 
 
44
 
my $flat = Bio::DB::Flat->new(-directory  => $tmpdir,
45
 
                              -dbname     => 'testflat',
46
 
                              -format     => 'fasta',
47
 
                              -index      => 'binarysearch',
48
 
                              -write_flag => 1 );
49
 
my $entries = $flat->build_index(File::Spec->catfile(qw(t data cysprot.fa)));
50
 
ok $entries == 7;
51
 
 
52
 
if ($no_DB_File){
53
 
    for (1..2) {
54
 
        skip("DB_File or BerkeleyDB not found, skipping DB_File tests",1);
55
 
    }
56
 
} else {
57
 
    my $bdb = Bio::DB::Flat->new(-directory  => $tmpdir,
58
 
                                 -dbname     => 'testbdb',
59
 
                                 -format     => 'fasta',
60
 
                                 -index      => 'bdb',
61
 
                                 -write_flag => 1 );
62
 
    ok defined($bdb);
63
 
    $entries = $bdb->build_index(File::Spec->catfile(qw(t data cysprot.fa)));
64
 
    ok $entries == 7;
65
 
}
66
 
 
67
 
if( $no_LWP ) {
68
 
    for (1..9 ) {
69
 
        skip("No LWP::UserAgent or HTTP::Request::Common modules installed skipping tests",1);
70
 
    }
71
 
} else {
72
 
    my $registry = Bio::DB::Registry->new;
73
 
    ok defined($registry);
74
 
    my @available_services = $registry->services;
75
 
    
76
 
    ok grep /testflat/,@available_services;
77
 
    my $db = $registry->get_database('testflat');
78
 
    ok defined($db);
79
 
    my $seq = $db->get_Seq_by_id("ALEU_HORVU");
80
 
    ok defined($seq);
81
 
    my $sequence = $seq->seq;
82
 
    ok $sequence eq "MAHARVLLLALAVLATAAVAVASSSSFADSNPIRPVTDRAASTLESAVLGALGRTRHALRFARFAVRYGKSYESAAEVRRRFRIFSESLEEVRSTNRKGLPYRLGINRFSDMSWEEFQATRLGAAQTCSATLAGNHLMRDAAALPETKDWREDGIVSPVKNQAHCGSCWTFSTTGALEAAYTQATGKNISLSEQQLVDCAGGFNNFGCNGGLPSQAFEYIKYNGGIDTEESYPYKGVNGVCHYKAENAAVQVLDSVNITLNAEDELKNAVGLVRPVSVAFQVIDGFRQYKSGVYTSDHCGTTPDDVNHAVLAVGYGVENGVPYWLIKNSWGADWGDNGYFKMEMGKNMCAIATCASYPVVAA";
83
 
 
84
 
    if ($no_DB_File) {
85
 
        for (1..4) {
86
 
            skip("DB_File or BerkeleyDB not found, skipping DB_File tests",1);
87
 
        }
88
 
    } else {
89
 
        ok grep /testbdb/,@available_services;
90
 
        $db = $registry->get_database('testbdb');
91
 
        ok defined($db);
92
 
        $seq = $db->get_Seq_by_id("ALEU_HORVU");
93
 
        ok defined($seq);
94
 
        $sequence = $seq->seq;
95
 
        ok $sequence eq "MAHARVLLLALAVLATAAVAVASSSSFADSNPIRPVTDRAASTLESAVLGALGRTRHALRFARFAVRYGKSYESAAEVRRRFRIFSESLEEVRSTNRKGLPYRLGINRFSDMSWEEFQATRLGAAQTCSATLAGNHLMRDAAALPETKDWREDGIVSPVKNQAHCGSCWTFSTTGALEAAYTQATGKNISLSEQQLVDCAGGFNNFGCNGGLPSQAFEYIKYNGGIDTEESYPYKGVNGVCHYKAENAAVQVLDSVNITLNAEDELKNAVGLVRPVSVAFQVIDGFRQYKSGVYTSDHCGTTPDDVNHAVLAVGYGVENGVPYWLIKNSWGADWGDNGYFKMEMGKNMCAIATCASYPVVAA";
96
 
    }
97
 
}
98
 
END {
99
 
        cleanup();
100
 
}
101
 
 
102
 
sub cleanup {
103
 
        eval {
104
 
                Bio::Root::IO->rmtree($tmpdir) if (-d $tmpdir);
105
 
        };
106
 
}
107
 
 
108
 
__END__