Bio-MUST-Apps-HmmCleaner
view release on metacpan or search on metacpan
t/cleaner.t view on Meta::CPAN
#!/usr/bin/env perl
use Test::Most;
use Test::Files;
use autodie;
use Modern::Perl;
use Smart::Comments;
use Path::Class qw(file);
use Bio::MUST::Apps::HmmCleaner;
say 'Note: tests designed for: HMMER 3.3.2 (Nov 2020); http://hmmer.org/';
my $class = 'Bio::MUST::Apps::HmmCleaner::Cleaner';
# Needed elements for cleaner objetc
my $scoreseq = ' gs+g+g++g+g sggdparpglsqqqrasqrkaqvr+lprakkleklgvfsackane+ckcngwknp+pptaprmdlqqpaa+lse crsc+h+ladhvshlenvse+einrllgmvvdvenlfmsvhkeedtdtkqvyfylfkllrkcilqm++pvvegslgsppfekpnieqg...
my $seq_id = Bio::MUST::Core::SeqId->new( full_id => 'Homo sapiens@ENSP00000225916');
my $seq = Bio::MUST::Core::Seq->new( seq => 'MAE********PSQAPTPAPAAQPRPLQSPAPAPTPTPAPSPASAPIPTPTPAPAPAPAAAPAGSTGTGGPGVGSGGAG*******SGGDPARPGLSQQQ**RASQRKAQVRGLPRAKKLEKLGVFSACKANETCKCNGWKNPK*****P*PTAPRMDLQQPAANLSELCRSCEHPLA*DHVSH*LENVSEDEINRLLGMVVDVE...
my %costs_values = (
'default' => [-0.15, -0.08, 0.15, 0.45],
'large' => [-0.175, -0.04, 0.15, 0.4],
'specificity' => [-0.125, -0.07, 0.175, 0.4],
'large_specificity' => [-0.125, -0.03, 0.15, 0.4],
);
my $cleaner = $class->new(
'seq' => $seq,
'score' => $scoreseq,
'costs' => $costs_values{'default'},
'threshold' => 1,
'delchar' => ' ',
);
my $expected_result = ' SGGDPARPGLSQQQ**RASQRKAQVRGLPRAKKLEKLGVFSACKANETCKCNGWKNPK*****P*PTAPRMDLQQPAANLSELCRSCEHPLA*DHVSH*LENVSEDEINRLLGMVVDVENLFMSV***HKEEDTDTKQVY*...
ok( $cleaner->get_result->seq eq $expected_result, 'Got expected cleaned sequence');
$cleaner->update(1,$costs_values{'specificity'});
my $specificity_expected_result = ' GSTGTGGPGVGSGGAG*******SGGDPARPGLSQQQ**RASQRKAQVRGLPRAKKLEKLGVFSACKANETCKCNGWKNPK*****P*PTAPRMDLQQPAANLSELCRSCEHPLA*DHVSH*LENVSEDEINRLLGMVVDVENLFMSV***H...
ok( $cleaner->get_result->seq eq $specificity_expected_result, 'Got expected cleaned sequence after cleaner update');
done_testing;
( run in 2.748 seconds using v1.01-cache-2.11-cpan-63c85eba8c4 )