~ubuntu-branches/ubuntu/trusty/bioperl/trusty

« back to all changes in this revision

Viewing changes to t/Tools/EUtilities/EUtilParameters.t

  • Committer: Package Import Robot
  • Author(s): Charles Plessy
  • Date: 2013-09-22 13:39:48 UTC
  • mfrom: (3.1.11 sid)
  • Revision ID: package-import@ubuntu.com-20130922133948-c6z62zegjyp7ztou
Tags: 1.6.922-1
* New upstream release.
* Replaces and Breaks grinder (<< 0.5.3-3~) because of overlaping contents.
  Closes: #722910
* Stop Replacing and Breaking bioperl ( << 1.6.9 ): not needed anymore. 

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
# -*-Perl-*- Test Harness script for Bioperl
2
 
# $Id: esearch.t 15112 2008-12-08 18:12:38Z sendu $
3
 
#
4
 
 
5
 
use strict;
6
 
use warnings;
7
 
 
8
 
BEGIN {
9
 
    use lib '.';
10
 
        use Bio::Root::Test;
11
 
        
12
 
        test_begin(-tests => 13,
13
 
                           -requires_modules =>
14
 
               [qw(URI HTTP::Request)]);
15
 
        
16
 
    use_ok('Bio::Tools::EUtilities::EUtilParameters');
17
 
}
18
 
 
19
 
my @ids = qw(6679096 31543332 134288853 483581 20805941 187951953 169158074
20
 
123228044 148676374 114326469 148707003 187952787 123233807 148694865 148694864
21
 
148694863 148694861 148694862 8705244 8568086);
22
 
 
23
 
my %params = (-eutil => 'efetch',
24
 
             -db => 'nucleotide',
25
 
             -id => \@ids,
26
 
             -email => 'me@foo.bar',
27
 
             -retmode => 'xml');
28
 
 
29
 
my $pobj = Bio::Tools::EUtilities::EUtilParameters->new(%params);
30
 
 
31
 
# initial 'primed' state
32
 
is($pobj->parameters_changed, 1);
33
 
 
34
 
my $request = $pobj->to_request; # 'exhaust' state 
35
 
isa_ok($request, 'HTTP::Request');
36
 
is($request->url, 'http://eutils.ncbi.nlm.nih.gov/entrez/eutils/efetch.fcgi?'.
37
 
   'db=nucleotide&retmode=xml&id=6679096%2C31543332%2C134288853%2C483581%2C'.
38
 
   '20805941%2C187951953%2C169158074%2C123228044%2C148676374%2C114326469%2C'.
39
 
   '148707003%2C187952787%2C123233807%2C148694865%2C148694864%2C148694863%2C'.
40
 
   '148694861%2C148694862%2C8705244%2C8568086&tool=BioPerl&email=me%40foo.bar');
41
 
is($pobj->to_string(), 'http://eutils.ncbi.nlm.nih.gov/entrez/eutils/'.
42
 
   'efetch.fcgi?db=nucleotide&retmode=xml&id=6679096%2C31543332%2C134288853%2C'.
43
 
   '483581%2C20805941%2C187951953%2C169158074%2C123228044%2C148676374%2C'.
44
 
   '114326469%2C148707003%2C187952787%2C123233807%2C148694865%2C148694864%2C'.
45
 
   '148694863%2C148694861%2C148694862%2C8705244%2C8568086'.
46
 
   '&tool=BioPerl&email=me%40foo.bar');
47
 
is($pobj->parameters_changed, 0);
48
 
 
49
 
# state won't change if the same parameters are passed
50
 
$pobj->set_parameters(%params);
51
 
is($pobj->parameters_changed, 0);
52
 
$pobj->retmode('xml');
53
 
is($pobj->parameters_changed, 0);
54
 
 
55
 
# reprime state with new value
56
 
$pobj->retmode('text');
57
 
is($pobj->parameters_changed, 1);
58
 
 
59
 
is(join(',',$pobj->available_parameters('epost')),
60
 
   'db,retmode,id,tool,email,WebEnv,query_key', 'available_parameters');
61
 
is(join(',',$pobj->available_parameters('efetch')),
62
 
   'db,retmode,id,retmax,retstart,rettype,strand,seq_start,seq_stop,complexity,report,tool,email,WebEnv,query_key', 'available_parameters');
63
 
 
64
 
my %data = $pobj->get_parameters;
65
 
is_deeply($data{id}, $params{-id}, 'get_parameters');
66
 
is($data{email}, $params{-email}, 'get_parameters');