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   367 use 5.010001;
  16         72  
2 16     16   98 use strict;
  16         54  
  16         461  
3 16     16   114 use warnings;
  16         37  
  16         740  
4              
5             use Mite::Miteception -all;
6 16     16   104  
  16         57  
  16         135  
7             our $AUTHORITY = 'cpan:TOBYINK';
8             our $VERSION = '0.011000';
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 308  
26 160   33     422 my ( $part ) = ( $class =~ /::(\w+)$/ );
27              
28 160         943 return $part;
29             }
30 160         646  
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 201  
39             $self->kingpin_command; # force build
40 80         396  
41 80         823 return;
42             }
43 80         517  
44             my ( $self ) = @_;
45 80         302  
46             return $self->kingpin->command( $self->command_name, $self->abstract );
47             }
48              
49 80     80   171 my $self = shift;
50              
51 80         382 my $config = $self->config;
52              
53             return false
54             unless $self->app->get_flag_value( 'exit-if-no-mite-dir' );
55 6     6 0 21  
56             return true
57 6         65 if !$self->app->get_flag_value( 'search-mite-dir' )
58             && !$config->dir_has_mite(".");
59 6 100       62  
60             return true
61             if !$config->find_mite_dir;
62 2 50 66     200  
63             return false;
64             }
65              
66 1 50       88 1;