Condition Coverage

File:blib/lib/Config/Abstraction.pm
Coverage:54.2%

line%coveragecondition
32150
Adec
00
11
Params::Get::get_params(undef, \@_) || {}
324100
ABdec
000
011
1X1
$$params{"config_dirs"} //= $$params{"path"}
326100
ABdec
0X0
100
111
not defined $$params{"config_dirs"} and $$params{"file"}
33167
ABdec
0X0
100
111
$$params{"config_file"} and "File::Spec"->file_name_is_absolute($$params{"config_file"})
362100
Adec
00
11
$$params{'env_prefix'} || 'APP_'
3700
ABdec
0X0
100
111
$$params{"level"} and $$self{"logger"}->can("level")
38150
Adec
00
11
$$self{"config"} and scalar keys %{$$self{"config"};}
40767
ABdec
0X0
100
111
$$self{"config_file"} and scalar @dirs > 1
45433
ABdec
0X0
100
111
not defined $rc and $self->_load_driver("XML::PP")
4920
ABdec
0X0
100
111
require File::Basename and "File::Basename"->import
49533
ABdec
000
011
1X1
$ENV{'SCRIPT_NAME'} || $0
50350
ABCdec
0XX0
1000
1011
11X1
$config_file eq $script_name and length $dir == 0 || $dir eq 'File::Spec'->curdir
50867
ABdec
0X0
100
111
-f $path and -r $path
514100
ABdec
000
011
1X1
$data =~ /^\s*<\?xml/ or $data =~ m[</.+>]
55167
ABdec
0X0
100
111
eval {         do {         $data = LoadFile($path) } } and ref $data eq "HASH"
57367
ABdec
000
011
1X1
not $data or ref $data ne "HASH"
58433
ABdec
000
011
1X1
not $data or ref $data ne "HASH"
58933
ABdec
000
011
1X1
not $data or ref $data ne "HASH"
60733
ABdec
000
011
1X1
not $data or ref $data ne "HASH"
6260
ABdec
0X0
100
111
not $@ and $logger
33
ABdec
0X0
100
111
$data and ref $data eq "HASH"
652100
Adec
00
11
$$ref{$_} //= {}
6680
Adec
00
11
$$ref{$_} //= {}
70167
ABdec
0X0
100
111
defined $ref and not $$self{"no_fixate"}
72450
Adec
00
11
$$self{'config'} && scalar keys %{$$self{'config'};}
79333
ABdec
0X0
100
111
$section and $$config{$section}
818100
Adec
00
11
$imports // []
86567
ABdec
000
011
1X1
$$self{'data'} || $$self{'config'}
87767
ABdec
0X0
100
111
ref $val eq "HASH" and exists $val->{$part}