[bug 2262]
[bioperl-live.git] / t / primer3.t
blob0913b6da3f6ffac0aecb16d31c7ac1de6a8c37ff
1 # -*-Perl-*- Test Harness script for Bioperl
2 # $Id$
5 use strict;
7 BEGIN {
8     use lib 't/lib';
9     use BioperlTest;
10     
11     test_begin(-tests => 12,
12                -requires_module => 'Clone');
13         
14     use_ok('Bio::Tools::Primer3');
17 my ($p3, $num, $primer);
19 ok $p3 = Bio::Tools::Primer3->new(-file => test_input_file('primer3_output.txt'));
20 ok $num = $p3->number_of_results;
21 is $num, 5 or diag "Got $num";
22 ok $num = $p3->all_results;
23 is defined $num, 1 or diag "Can't get all results";
24 ok $num = $p3->primer_results(1);
25 is defined $num, 1 or diag "Can't get results for 1";
26 ok $primer = $p3->next_primer;
27 isa_ok $primer, "Bio::Seq::PrimedSeq" or diag
28   "reference for primer stream is not right";
30 # get the left primer
31 my $left_primer = $primer->get_primer('left');
33 # get the sequence for that primer. This is a test to verify behavior 
34 # on the bioperl list in or about 050315
35 my $seqobj = $left_primer->seq();
37 my $seq = $seqobj->seq();
39 my $other_left_primer = $primer->get_primer();
41 # a different way to access the primers in the stream
42 my $alt = $p3->primer_results(0,'PRIMER_LEFT_INPUT');
44 # next one
45 ok $primer = $p3->next_primer;
46 # get the left primer
47 my $left_primer_seq = $primer->get_primer('left')->seq;
48 is $left_primer_seq->seq, "GAGGGTAACACGCTGGTCAT";