Skip to content

Commit

Permalink
Saving current changes
Browse files Browse the repository at this point in the history
  • Loading branch information
fangly committed Mar 5, 2012
1 parent 91a0c5a commit 4c1046d
Show file tree
Hide file tree
Showing 3 changed files with 36 additions and 17 deletions.
5 changes: 4 additions & 1 deletion Bio/SeqFeature/SubSeq.pm
Expand Up @@ -130,7 +130,10 @@ sub new {
### We should not have to use this :(
$template->add_SeqFeature($self);
} else {
$template->add_SeqFeature($self, 'EXPAND');
####
#$template->add_SeqFeature($self, 'EXPAND');
$template->add_SeqFeature($self);
####
}

}
Expand Down
19 changes: 19 additions & 0 deletions Bio/Tools/AmpliconSearch.pm
Expand Up @@ -349,6 +349,8 @@ sub next_amplicon {
}
}

# # May want to use Bio::Range intersection() to check for overlap

# # Get amplicons from forward and reverse strand
# my $fwd_amplicons = _extract_amplicons_from_strand($seq, $fwd_regexp, $rev_regexp, 1);
# my $rev_amplicons = _extract_amplicons_from_strand($seq, $fwd_regexp, $rev_regexp, -1);
Expand Down Expand Up @@ -399,6 +401,12 @@ sub _attach_amplicon {
-template => $self->template,
);

####
use Data::Dumper;
print "Amplicon: ".$amplicon->start." .. ".$amplicon->end." -> ".$amplicon->seq->seq."\n";
print "AMPLICON: ".Dumper($amplicon);
####

# Create Bio::SeqFeature::Primer feature and attach them to the amplicon
if ($self->attach_primers) {
for my $type ('fwd', 'rev') {
Expand All @@ -419,6 +427,11 @@ sub _attach_amplicon {
$pstrand = -1 * $amplicon->strand;
}

####
$pstart += $start - 1;
$pend += $start - 1;
####

Bio::SeqFeature::Primer->new(
-start => $pstart,
-end => $pend,
Expand All @@ -428,6 +441,12 @@ sub _attach_amplicon {
}
}

####
use Data::Dumper;
print "Amplicon: ".$amplicon->start." .. ".$amplicon->end." -> ".$amplicon->seq->seq."\n";
print "AMPLICON: ".Dumper($amplicon);
####

return $amplicon;
}

Expand Down
29 changes: 13 additions & 16 deletions t/Tools/AmpliconSearch.t
Expand Up @@ -2,17 +2,17 @@ BEGIN {
use lib '.';
use Bio::Root::Test;

test_begin(-tests => 118);
test_begin(-tests => 119);

use_ok 'Bio::Tools::AmpliconSearch';
use_ok 'Bio::PrimarySeq';
use_ok 'Bio::SeqFeature::Primer';
use_ok 'Bio::Tools::AmpliconSearch';
}



my ($search, $amplicon, $seq, $forward, $reverse, $primer, $primer_seq,
$annotated, $num_feats);
$annotated, $num_feats, $template_seq);


# Basic object
Expand All @@ -32,23 +32,25 @@ $forward = Bio::PrimarySeq->new(
ok $search = Bio::Tools::AmpliconSearch->new(
-template => $seq,
-fwd_primer => $forward,
### -attach_primers => 1,
-attach_primers => 1,
), 'Forward primer only';
is $search->fwd_primer->seq, 'AAACTTAAAGGAATTGACGG';
is $search->rev_primer, undef;
is $search->template->seq, 'aaaAAACTTAAAGGAATTGACGGaaaaaaaaaaaaGTACACACCGCCCGTaaaaaa';
ok $template_seq = $search->template;
isa_ok $template_seq, 'Bio::Seq';
is $template_seq->seq, 'aaaAAACTTAAAGGAATTGACGGaaaaaaaaaaaaGTACACACCGCCCGTaaaaaa';
ok $amplicon = $search->next_amplicon;
isa_ok $amplicon, 'Bio::SeqFeature::Amplicon';
is $amplicon->start, 4;
is $amplicon->end, 56;
is $amplicon->strand, 1;
is $amplicon->seq->seq, 'AAACTTAAAGGAATTGACGGaaaaaaaaaaaaGTACACACCGCCCGTaaaaaa';
###ok $primer = $amplicon->fwd_primer;
###ok $primer_seq = $primer->seq;
###is $primer_seq->seq, 'AAACTTAAAGGAATTGACGG';
###is $primer_seq->start, 1;
###is $primer_seq->end, 20;
###is $primer_seq->strand, 1;
ok $primer = $amplicon->fwd_primer;
ok $primer_seq = $primer->seq;
is $primer_seq->seq, 'AAACTTAAAGGAATTGACGG';
is $primer_seq->start, 1;
is $primer_seq->end, 20;
is $primer_seq->strand, 1;
is $amplicon = $search->next_amplicon, undef;


Expand Down Expand Up @@ -340,11 +342,6 @@ $num_feats = 0;
for my $feat ( $annotated->get_SeqFeatures ) {
$num_feats++;
isa_ok $feat, 'Bio::SeqFeature::Amplicon';

####
print $feat->gff_string;
####

}
is $num_feats, 2;
is $search->next_amplicon, undef;
Expand Down

0 comments on commit 4c1046d

Please sign in to comment.