convert to Test::More
[bioperl-live.git] / t / GDB.t
blob61fd8c167cbef4c60d6f6ae7e76c8d577ef1f385
1 # This is -*-Perl-*- code
2 ## Bioperl Test Harness Script for Modules
3 ##
4 # $Id$
6 # Before `make install' is performed this script should be runnable with
7 # `make test'. After `make install' it should work as `perl test.t'
9 use strict;
10 use vars qw($NUMTESTS $DEBUG);
12 BEGIN {
13     # to handle systems with no installed Test module
14     # we include the t dir (where a copy of Test.pm is located)
15     # as a fallback
16     $NUMTESTS = 12;
17         $DEBUG = $ENV{'BIOPERLDEBUG'} || 0;
18         
19         eval {require Test::More;};
20         if ($@) {
21                 use lib 't/lib';
22         }
23         use Test::More;
24         
25         eval {
26                 require LWP::UserAgent;
27         require HTML::Parser;
28         require HTTP::Request::Common;
29         };
30         if ($@) {
31                 plan skip_all => 'HTML::Parser or LWP::UserAgent or HTTP::Request not installed. This means Bio::DB::GDB modules is not usable. Skipping tests';
32         }
33     elsif (!$DEBUG) {
34                 plan skip_all => 'Skipping all tests since they require network access, set BIOPERLDEBUG=1 to test';
35         }
36         else {
37                 plan tests => $NUMTESTS;
38         }
39     use_ok('Bio::DB::GDB');
42 my $verbose = -1;
44 my ($gdb, $marker, $info);
45 # get a single seq
47 SKIP: {
48     $marker = 'D1S234';
50     $gdb = new Bio::DB::GDB(-verbose=>$verbose);
51     
52     eval {
53         $info = $gdb->get_info(-type=>'marker',
54                       -id  => $marker);
55     };
56     
57     if( $@ || ! defined $info) {
58         skip("Warning: Couldn't connect to GDB website!  Skipping all other tests",11);
59     }
60     
61     ok $gdb;
62     ok $info;
63     is $info->{gdbid}, 'GDB:188296', 'info was ' . $info->{gdbid};
64     is $info->{primers}->[0], 'GCCCAGGAGGTTGAGG', 'info was ' . $info->{primers}->[0];
65     is $info->{primers}->[1], 'AAGGCAGGCTTGAATTACAG', 'info was ' . $info->{primers}->[1];
66     is $info->{'length'}, 226, 'info was '. $info->{'length'};
67     
68     $marker = 'UT497';
69     $info = undef;
70     eval { 
71         $info = $gdb->get_info(-type=>'marker',
72                          -id  => $marker);
73     };
74     if( $@ || ! defined $info) {
75         skip("Warning: Couldn't connect to GDB website! Skipping all other tests",5);
76     }
77     ok $info;
78     is $info->{gdbid}, 'GDB:198271', 'info was ' . $info->{gdbid};
79     is $info->{primers}->[0], 'GGGTGACAGAACAAGACCT', 'info was ' . $info->{primers}->[0];
80     is $info->{primers}->[1], 'ACCCATTAGCCTTGAACTGA', 'info was ' . $info->{primers}->[1];
81     is $info->{'length'}, 155, 'info was '. $info->{'length'};