Condition Coverage

File:blib/lib/Database/Abstraction.pm
Coverage:66.2%

line%coveragecondition
344100
ABdec
0X0
100
111
$$params{"expires_in"} and not $$params{"cache_duration"}
350100
Adec
00
11
$defaults{"cache_duration"} ||= "1 hour"
37233
ABdec
0X0
100
111
scalar @_ == 1 and ref $_[0] eq "HASH"
519100
ABdec
0X0
100
111
scalar @_ == 1 and not ref $_[0]
54533
ABdec
0X0
100
111
defined $args{"logger"} and not &Scalar::Util::blessed($args{"logger"})
54967
ABdec
000
011
1X1
$args{"dsn"} or $defaults{"dsn"}
550100
ABdec
000
011
1X1
$args{"directory"} or $defaults{"directory"}
55267
ABdec
000
011
1X1
$args{'directory'} || $defaults{'directory'}
33
ABdec
000
011
1X1
$args{'directory'} || $defaults{'directory'}
60567
ABdec
0X0
100
111
$c and $c->isa(__PACKAGE__)
61067
ABdec
000
011
1X1
$$params{"sep_char"} ||= $$self{"sep_char"} ? $$self{"sep_char"} : "!"
61167
ABdec
000
011
1X1
$$params{'max_slurp_size'} || $$self{'max_slurp_size'}
61333
ABdec
000
011
1X1
$$self{'table'} || ref $self
62467
ABdec
000
011
1X1
$$self{'dsn'} || $defaults{'dsn'}
6250
ABdec
0X0
100
111
require DBI and "DBI"->import
65533
ABdec
000
011
1X1
$$self{'directory'} || $defaults{'directory'}
65667
ABdec
000
011
1X1
$$self{'dbname'} || $defaults{'dbname'} || $table
65733
ABdec
0X0
100
111
$dbname =~ /^[a-zA-Z0-9_.-]+$/ and not $dbname =~ /\.\./
6660
ABdec
0X0
100
111
require DBI and "DBI"->import
69733
ABdec
0X0
100
111
defined $slurp_file and -r $slurp_file
70967
ABdec
0X0
100
111
-r $psv and &Database::Abstraction::open($fin, "<", $psv)
72467
ABdec
000
011
1X1
$$self{'filename'} || $defaults{'filename'}
72533
ABdec
0X0
100
111
$filename =~ /^[a-zA-Z0-9_.-]+$/ and not $filename =~ /\.\./
73067
ABdec
0X0
100
111
defined $slurp_file and -r $slurp_file
787100
ABdec
0X0
100
111
-s $slurp_file <= $max_slurp_size and not $$params{"column_names"}
83867
ABdec
0X0
100
111
ref $xml eq "HASH" and not $$self{"no_entry"}
883100
ABdec
0X0
100
111
$$self{"data"} and ref $$self{"data"} eq "HASH"
94250
Adec
00
11
Params::Get::get_params(undef, \@_) // {}
954100
Adec
00
11
$params //= {}
961100
ABCdec
0XX0
10X0
1100
1111
not $join_clause and $$self{"data"} and not $self->_has_complex_criteria($params)
96250
ABCdec
0XX0
10X0
1100
1111
scalar keys %{$params;} == 1 and defined $$params{"entry"} and not $$self{"no_entry"}
996100
ABdec
0X0
100
111
$$self{"type"} eq "CSV" and not $$self{"no_entry"}
109650
Adec
00
11
Params::Get::get_params(undef, \@_) // {}
1104100
Adec
00
11
$params //= {}
111075
ABCdec
0XX0
10X0
1100
1111
not $join_clause and $$self{"data"} and not $self->_has_complex_criteria($params)
111150
ABCdec
0XX0
10X0
1100
1111
scalar keys %{$params;} == 1 and defined $$params{"entry"} and not $$self{"no_entry"}
1138100
ABdec
0X0
100
111
$$self{"type"} eq "CSV" and not $$self{"no_entry"}
124550
Adec
00
11
Params::Get::get_params(undef, \@_) // {}
125350
ABCdec
0XX0
10X0
1100
1111
scalar keys %{$params;} == 1 and defined $$params{"entry"} and not $$self{"no_entry"}
126167
ABdec
0X0
100
111
exists $$self{'data'}{$$params{'entry'}} && $$self{'data'}{$$params{'entry'}}
1269100
ABdec
0X0
100
111
$$self{"type"} eq "CSV" and not $$self{"no_entry"}
136267
ABCDEdec
0XXXX0
10XXX0
110XX0
1110X0
111100
111111
$$self{"data"} and not $$self{"no_entry"} and scalar keys %{$params;} == 1 and defined $$params{"entry"} and not $self->_has_complex_criteria($params)
13710
ABCdec
0XX0
10X0
1100
1111
not $$self{"no_entry"} and scalar keys %{$params;} == 1 and defined $$params{"entry"}
13750
ABCDdec
0XXX0
10XX0
110X0
11100
11111
$$self{"no_entry"} and scalar keys %{$params;} == 1 and defined $id and defined $$params{$id}
138433
ABdec
000
011
1X1
delete $params->{'table'} // $table
1392100
ABdec
0X0
100
111
$$self{"type"} eq "CSV" and not $$self{"no_entry"}
166150
Adec
00
11
$$self{$table}{"Driver"}{"Name"} // ""
178067
ABdec
0X0
100
111
exists $self->{'auto_load'} and not $$self{"auto_load"}
179433
ABdec
0X0
100
111
$$self{"no_entry"} and not $$self{"berkeley"}
1810100
ABdec
000
011
1X1
delete $params{'distinct'} || delete $params{'unique'}
1812100
ABdec
0X0
100
111
wantarray and not $distinct
1813100
ABdec
0X0
100
111
scalar keys %params == 0 and my $data = $$self{"data"}
182267
ABdec
0X0
100
111
$$self{"type"} eq "CSV" and not $$self{"no_entry"}
1833100
ABdec
0X0
100
111
scalar keys %params == 1 and defined(my $key = $params{"entry"})
184025
ABCdec
0XX0
10X0
1100
1111
exists $row->{$key} and defined $$row{$key} and $$row{$key} eq $value
185267
ABdec
0X0
100
111
exists $data->{$key} and defined(my $hash = $$data{$key})
188375
ABCdec
0XX0
10X0
1100
1111
exists $row->{$key} and defined $$row{$key} and $$row{$key} eq $value
1895100
ABdec
0X0
100
111
$$self{"type"} eq "CSV" and not $$self{"no_entry"}
192467
ABdec
0X0
100
111
scalar @args and $args[0]
194833
ABdec
000
011
1X1
$$self{$table}->prepare_cached($query) || croak($query)
197033
ABdec
0X0
100
111
defined $^V and $^V ge "v5.14.0"
197933
ABdec
000
011
1X1
$$self{'table'} || ref $self
2012100
Adec
00
11
$$j{"type"} // "INNER"
2030100
ABdec
000
011
1X1
exists $params->{'-or'} or exists $params->{'-and'}
2044100
Adec
00
11
$params //= {}
2107100
ABdec
000
011
1X1
$op eq "-in" or $op eq "-not_in"
216050
Adec
00
11
$params //= {}
2206100
ABdec
000
011
1X1
$dp[$i - 1][$j] || $dp[$i][$j - 1]
2210100
ABdec
0X0
100
111
$dp[$i - 1][$j - 1] && ($p[$i - 1] eq '_' || $p[$i - 1] eq $s[$j - 1])
2226100
ABdec
0X0
100
111
defined $row_val and grep {$row_val eq $_;} @{$operand;}
222867
ABdec
0X0
100
111
defined $row_val and grep {$row_val eq $_;} @{$operand;}
2230100
ABCdec
0XX0
10X0
1100
1111
defined $row_val and $row_val >= $$operand[0] and $row_val <= $$operand[1]
2241100
ABdec
0X0
100
111
defined $row_val and $row_val ne $operand
224467
ABdec
0X0
100
111
defined $row_val and $row_val > $operand
224667
ABdec
0X0
100
111
defined $row_val and $row_val < $operand
224867
ABdec
0X0
100
111
defined $row_val and $row_val >= $operand
225067
ABdec
0X0
100
111
defined $row_val and $row_val <= $operand
2256100
ABdec
0X0
100
111
defined $row_val && defined $crit_val
100
ABdec
000
011
1X1
defined $row_val || defined $crit_val
226733
ABdec
000
011
1X1
$$params{'table'} || $$self{'table'} || ref $self
2273100
ABCdec
0000
0011
01X1
1XX1
$$self{$table} or $$self{"data"} or $$self{"berkeley"}
228433
ABdec
000
011
1X1
$$self{'table'} || ref $self
230533
ABdec
000
011
1X1
$self->_is_berkeley_db_0($fh) || $self->_is_berkeley_db_12($fh)
234433
ABdec
000
011
1X1
$known_magic{$magic_be} || $known_magic{$magic_le}
235833
ABdec
000
011
1X1
$header eq '6115' || $header eq '1561'
237133
ABdec
0X0
100
111
scalar @messages and my $logger = $$self{"logger"}