Condition Coverage

blib/lib/App/Easer/V1.pm
Criterion Covered Total %
condition 94 147 63.9


and 3 conditions

line !l l&&!r l&&r condition
113 15 0 0 defined $min and $min > 1
114 15 0 0 defined $max and length $max
116 15 0 0 defined $desttype and $desttype eq "\@"
125 0 0 0 defined $desttype and $desttype eq "\@"
134 0 0 0 defined $desttype and $desttype eq "\@"
195 1 22 14 defined $child and length $child
205 1 0 2 scalar keys %$subc == 1 and defined $subc->{'index'}
295 0 28 18 -e $path and not -d $path
28 0 18 -e $path and not -d $path and substr($_, 0, length $bprefix) eq $bprefix
313 154 234 23 exists $spec->{'children'} and not $spec->{'children'}
321 99 234 55 $self->{'application'}{'configuration'}{'auto-leaves'} and @children == 0
445 0 0 182 defined $o->{'getopt'} and $o->{'getopt'} =~ /\A(\w+)/msux
447 0 0 0 defined $o->{'environment'} and $o->{'environment'} ne 1
611 0 79 104 $strict and @args
79 104 0 $strict and @args and $args[0] =~ /\A -/msux
650 60 144 34 defined $en && exists $ENV{$en}
696 10 0 79 defined $sname and length $sname
739 184 0 0 defined $from_spec and "HASH" ne ref $from_spec
184 0 0 defined $from_self and "HASH" ne ref $from_self

or 2 conditions

line l !l condition
14 79 24 $commands->{'help'} //= {"name", "help", "supports", ["help"], "help", "print a help message", "description", "print help for (sub)command", "allow-residual-options", 0, "leaf", 1, "execute", \&App::Easer::V1::stock_help}
23 79 24 $commands->{'commands'} //= {"name", "commands", "supports", ["commands"], "help", "list sub-commands", "description", "Print list of supported sub-commands", "allow-residual-options", 0, "leaf", 1, "execute", \&App::Easer::V1::stock_commands}
62 1 183 ($spec->{'collect'} // $self->{'application'}{'configuration'}{'collect'}) // \&App::Easer::V1::collect
162 0 184 $spec->{'commit'} // (return)
186 93 0 $self->{'configs'}[-1] // {}
269 153 4 $command->{'supports'} //= [$child]
314 234 154 $spec->{'children'} // []
330 0 0 $self->{'application'}{'configuration'}{'auto-children'} // []
393 49 0 $command->{'supports'} // [$child]
427 5 0 (eval { do { require JSON::PP; JSON::PP::decode_json($text) } } // eval { do { eval $text } }) // die("cannot load application\n")
432 0 186 ($spec->{'merge'} // $self->{'application'}{'configuration'}{'merge'}) // \&App::Easer::V1::hash_merge
438 0 204 ($cspec->{'namenv'} // $self->{'application'}{'configuration'}{'namenv'}) // \&App::Easer::V1::stock_NamEnv
453 0 184 ($spec->{'validate'} // $self->{'application'}{'configuration'}{'validate'}) // (return)
492 19 2 $command->{'options'} // []
500 0 25 $option->{'help'} // ""
514 8 0 $option->{'default'} // "*undef*"
533 386 4 $s->{'application'}{'commands'}{$cmd} // undef
544 151 403 $self->{'application'}{'configuration'}{'specfetch'} // \&App::Easer::V1::stock_SpecFromHash
558 0 103 $application->{'factory'} // {}
574 93 0 execute($self, $args) // 0
586 2 178 ($spec->{'sources'} // $self->{'application'}{'configuration'}{'sources'}) // \&App::Easer::V1::stock_DefaultSources
605 150 33 $spec->{'options'} // []
621 0 3 $spec->{'config-option'} // "config"
633 1 2 $spec->{'config-files'} // []
640 148 33 $spec->{'options'} // []
651 150 33 $spec->{'options'} // []
658 18 227 $self->{'application'}{'configuration'}{$aek} // undef
661 194 69 $env // ""
662 36 0 $self->{'application'}{'configuration'}{'name'} // ""
667 81 100 $self->{'configs'}[-1] // {}

or 3 conditions

line l !l&&r !l&&!r condition
62 0 1 183 $spec->{'collect'} // $self->{'application'}{'configuration'}{'collect'}
379 377 245 16 $is_overridable{$dst_key} or not exists $retval{$dst_key}
427 2 3 0 eval { do { require JSON::PP; JSON::PP::decode_json($text) } } // eval { do { eval $text } }
432 0 0 186 $spec->{'merge'} // $self->{'application'}{'configuration'}{'merge'}
438 0 0 204 $cspec->{'namenv'} // $self->{'application'}{'configuration'}{'namenv'}
453 0 0 184 $spec->{'validate'} // $self->{'application'}{'configuration'}{'validate'}
539 146 5 0 $s->{'application'}{'commands'}{$cmd} //= $s->{'factory'}->($cmd, "spec")->()
586 3 2 178 $spec->{'sources'} // $self->{'application'}{'configuration'}{'sources'}
593 0 183 0 $spec->{'getopt-config'} // default_getopt_config($self, $spec)
713 839 88 2 $$cache{$executable . " " . $default_subname} //= &$factory($executable, $default_subname)