File: Primer3.t

package info (click to toggle)
bioperl 1.6.1-2
  • links: PTS, VCS
  • area: main
  • in suites: squeeze
  • size: 40,768 kB
  • ctags: 12,005
  • sloc: perl: 174,299; xml: 13,923; sh: 1,941; lisp: 1,803; asm: 109; makefile: 53
file content (54 lines) | stat: -rwxr-xr-x 1,497 bytes parent folder | download
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
# -*-Perl-*- Test Harness script for Bioperl
# $Id: Primer3.t 16091 2009-09-15 22:11:15Z cjfields $


use strict;

BEGIN {
    use lib '.';
    use Bio::Root::Test;
    
    test_begin(-tests => 14,
               -requires_module => 'Clone');
	
    use_ok('Bio::Tools::Primer3');
}

my ($p3, $num, $primer);

ok $p3 = Bio::Tools::Primer3->new(-file => test_input_file('primer3_output.txt'));
ok $num = $p3->number_of_results;
is $num, 5 or diag "Got $num";
ok $num = $p3->all_results;
is defined $num, 1 or diag "Can't get all results";
ok $num = $p3->primer_results(1);
is defined $num, 1 or diag "Can't get results for 1";
ok $primer = $p3->next_primer;
isa_ok $primer, "Bio::Seq::PrimedSeq" or diag
  "reference for primer stream is not right";

# get the left primer
my $left_primer = $primer->get_primer('left');

# get the sequence for that primer. This is a test to verify behavior 
# on the bioperl list in or about 050315
my $seqobj = $left_primer->seq();

my $seq = $seqobj->seq();

my $other_left_primer = $primer->get_primer();

# a different way to access the primers in the stream
my $alt = $p3->primer_results(0,'PRIMER_LEFT_INPUT');

# next one
ok $primer = $p3->next_primer;
# get the left primer
my $left_primer_seq = $primer->get_primer('left')->seq;
is $left_primer_seq->seq, "GAGGGTAACACGCTGGTCAT";

# bug 2862
ok $p3 = Bio::Tools::Primer3->new(-file=>test_input_file('bug2862.pmr'));
$num=0;
while ($p3->next_primer) { $num++ };
is $p3->number_of_results, $num, 'bug 2862';