1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64
|
# -*-Perl-*- Test Harness script for Bioperl
# $Id: Species.t 15112 2008-12-08 18:12:38Z sendu $
use strict;
BEGIN {
use lib '.';
use Bio::Root::Test;
test_begin(-tests => 21);
use_ok('Bio::Species');
use_ok('Bio::DB::Taxonomy');
}
ok my $sps = Bio::Species->new();
$sps->classification(qw( sapiens Homo Hominidae
Catarrhini Primates Eutheria Mammalia Vertebrata
Chordata Metazoa Eukaryota));
is $sps->binomial, 'Homo sapiens';
ok $sps->sub_species('sapiensis');
is $sps->binomial, 'Homo sapiens';
is $sps->binomial('FULL'), 'Homo sapiens sapiensis';
is $sps->sub_species, 'sapiensis';
$sps->classification(qw( sapiens Homo Hominidae
Catarrhini Primates Eutheria Mammalia Vertebrata
Chordata Metazoa Eukaryota));
is $sps->binomial, 'Homo sapiens';
# test cmd line initializtion
ok my $species = Bio::Species->new( -classification =>
[ qw( sapiens Homo Hominidae
Catarrhini Primates Eutheria
Mammalia Vertebrata
Chordata Metazoa Eukaryota) ],
-common_name => 'human');
is $species->binomial, 'Homo sapiens';
is $species->species, 'sapiens';
is $species->genus, 'Homo';
# test -common_name parameter, bug 2549
is $species->common_name, 'human';
# A Bio::Species isa Bio::Taxon, so test some things from there briefly
is $species->scientific_name, 'sapiens';
is $species->rank, 'species';
# We can make a species object from just an id an db handle
SKIP: {
test_skip(-tests => 5, -requires_networking => 1);
$species = Bio::Species->new(-id => 51351);
my $taxdb = Bio::DB::Taxonomy->new(-source => 'entrez');
eval {$species->db_handle($taxdb);};
skip "Unable to connect to entrez database; no network or server busy?", 5 if $@;
is $species->binomial, 'Brassica rapa subsp.';
is $species->binomial('FULL'), 'Brassica rapa subsp. pekinensis';
is $species->genus, 'Brassica';
is $species->species, 'rapa subsp.';
is $species->sub_species, 'pekinensis';
}
|