Condition Coverage

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

line%coveragecondition
32550
Adec
00
11
Params::Get::get_params(undef, \@_) || {}
328100
ABdec
000
011
1X1
$params->{'config_dirs'} //= $params->{'path'}
330100
ABdec
0X0
100
111
not defined $params->{'config_dirs'} and $params->{'file'}
33567
ABdec
0X0
100
111
$params->{'config_file'} and "File::Spec"->file_name_is_absolute($params->{'config_file'})
366100
Adec
00
11
$params->{'env_prefix'} || 'APP_'
3740
ABdec
0X0
100
111
$params->{'level'} and $self->{'logger'}->can("level")
38550
Adec
00
11
defined $self->{'config'} and scalar keys %{$$self{"config"};}
41167
ABdec
0X0
100
111
$self->{'config_file'} and scalar @dirs > 1
422100
ABdec
0X0
100
111
length $dir and not -d $dir
46233
ABdec
0X0
100
111
not defined $rc and $self->_load_driver("XML::PP")
5120
ABdec
0X0
100
111
require File::Basename and "File::Basename"->import
51533
ABdec
000
011
1X1
$ENV{'SCRIPT_NAME'} || $0
52350
ABCdec
0XX0
1000
1011
11X1
$config_file eq $script_name and length $dir == 0 || $dir eq 'File::Spec'->curdir
52867
ABdec
0X0
100
111
-f $path and -r $path
534100
ABdec
000
011
1X1
$data =~ /^\s*<\?xml/ or $data =~ m[</.+>]
57167
ABdec
0X0
100
111
eval {         do {         $data = LoadFile($path) } } and ref $data eq "HASH"
60067
ABdec
000
011
1X1
not $data or ref $data ne "HASH"
61133
ABdec
000
011
1X1
not $data or ref $data ne "HASH"
61633
ABdec
000
011
1X1
not $data or ref $data ne "HASH"
63533
ABdec
000
011
1X1
not $data or ref $data ne "HASH"
6540
ABdec
0X0
100
111
not $@ and $logger
33
ABdec
0X0
100
111
$data and ref $data eq "HASH"
680100
Adec
00
11
$ref->{$_} //= {}
6980
Adec
00
11
$ref->{$_} //= {}
73367
ABdec
0X0
100
111
defined $ref and not $self->{'no_fixate'}
79150
Adec
00
11
$self->{'config'} && scalar keys %{$$self{'config'};}
86033
ABdec
0X0
100
111
$section and $config->{$section}
885100
Adec
00
11
$imports // []
93267
ABdec
000
011
1X1
$self->{'data'} || $self->{'config'}
94467
ABdec
0X0
100
111
ref $val eq "HASH" and exists $val->{$part}