File Coverage

blib/lib/Mite/App/Command.pm
Criterion Covered Total %
statement 27 29 93.1
branch 4 6 66.6
condition 3 6 50.0
subroutine 8 9 88.8
pod 0 4 0.0
total 42 54 77.7


line stmt bran cond sub pod time code
1 16     16   335 use 5.010001;
  16         53  
2 16     16   93 use strict;
  16         44  
  16         408  
3 16     16   79 use warnings;
  16         32  
  16         721  
4              
5             use Mite::Miteception -all;
6 16     16   98  
  16         59  
  16         120  
7             our $AUTHORITY = 'cpan:TOBYINK';
8             our $VERSION = '0.010008';
9              
10             has app => (
11             is => ro,
12             isa => Object,
13             required => true,
14             weak_ref => true,
15             handles => [ 'config', 'project', 'kingpin' ],
16             );
17              
18             has kingpin_command => (
19             is => lazy,
20             isa => Object,
21             );
22              
23             my $self = shift;
24             my $class = ref($self) || $self;
25 160     160 0 236  
26 160   33     398 my ( $part ) = ( $class =~ /::(\w+)$/ );
27              
28 160         770 return $part;
29             }
30 160         584  
31             return '???';
32             }
33              
34 0     0 0 0 my ( $self, $app ) = @_;
35              
36             my $name = $self->command_name;
37             $self->app->commands->{$name} = $self;
38 80     80 0 161  
39             $self->kingpin_command; # force build
40 80         342  
41 80         881 return;
42             }
43 80         493  
44             my ( $self ) = @_;
45 80         227  
46             return $self->kingpin->command( $self->command_name, $self->abstract );
47             }
48              
49 80     80   151 my $self = shift;
50              
51 80         332 my $config = $self->config;
52              
53             return false
54             unless $self->app->get_flag_value( 'exit-if-no-mite-dir' );
55 6     6 0 15  
56             return true
57 6         54 if !$self->app->get_flag_value( 'search-mite-dir' )
58             && !$config->dir_has_mite(".");
59 6 100       52  
60             return true
61             if !$config->find_mite_dir;
62 2 50 66     166  
63             return false;
64             }
65              
66 1 50       72 1;