File Coverage

lib/App/SimulateReads/Command/QualityDB/Remove.pm
Criterion Covered Total %
statement 3 15 20.0
branch 0 8 0.0
condition n/a
subroutine 1 4 25.0
pod 3 3 100.0
total 7 30 23.3


line stmt bran cond sub pod time code
1             package App::SimulateReads::Command::QualityDB::Remove;
2             # ABSTRACT: qualitydb subcommand class. Remove a quality profile from database.
3              
4 1     1   1617 use App::SimulateReads::Base 'class';
  1         2  
  1         6  
5              
6             extends 'App::SimulateReads::Command::QualityDB';
7              
8             our $VERSION = '0.06'; # VERSION
9              
10             override 'opt_spec' => sub {
11             super,
12             'verbose|v',
13             'quality-profile|q=s',
14             'read-size|r=i'
15             };
16              
17             sub validate_args {
18 0     0 1   my ($self, $args) = @_;
19 0 0         die "Too many arguments: '@$args'\n" if @$args;
20             }
21              
22             sub validate_opts {
23 0     0 1   my ($self, $opts) = @_;
24            
25 0 0         if (not exists $opts->{'quality-profile'}) {
26 0           die "Option 'quality-profile' not defined\n";
27             }
28              
29 0 0         if (not exists $opts->{'read-size'}) {
30 0           die "Option 'read-size' not defined\n";
31             }
32             }
33              
34             sub execute {
35 0     0 1   my ($self, $opts, $args) = @_;
36 0 0         $LOG_VERBOSE = exists $opts->{verbose} ? $opts->{verbose} : 0;
37 0           log_msg "Attempting to remove $opts->{'quality-profile'}:$opts->{'read-size'}";
38 0           $self->deletedb($opts->{'quality-profile'}, $opts->{'read-size'});
39 0           log_msg "Done!";
40             }
41              
42             __END__
43              
44             =pod
45              
46             =encoding UTF-8
47              
48             =head1 NAME
49              
50             App::SimulateReads::Command::QualityDB::Remove - qualitydb subcommand class. Remove a quality profile from database.
51              
52             =head1 VERSION
53              
54             version 0.06
55              
56             =head1 SYNOPSIS
57              
58             simulate_reads qualitydb remove -q <entry name> -r <size>
59              
60             Options:
61             -h, --help brief help message
62             -M, --man full documentation
63             -v, --verbose print log messages
64             -q, --quality-profile quality-profile name for the database [required]
65             -r, --read-size the read-size of the quality-profile [required, Integer]
66              
67             =head1 DESCRIPTION
68              
69             B<simulate_reads> will read the given input file and do something
70             useful with the contents thereof.
71              
72             =head1 AUTHOR
73              
74             Thiago L. A. Miller <tmiller@mochsl.org.br>
75              
76             =head1 COPYRIGHT AND LICENSE
77              
78             This software is Copyright (c) 2017 by Teaching and Research Institute from Sírio-Libanês Hospital.
79              
80             This is free software, licensed under:
81              
82             The GNU General Public License, Version 3, June 2007
83              
84             =cut