Branch Coverage

blib/lib/SQL/Abstract/Classic.pm
Criterion Covered Total %
branch 180 240 75.0


line true false branch
47 1148 0 unless $_[0]{'debug'}
55 148 0 if @_ > 1 and length ref $_[0]
64 116 0 if @_ > 1 and length ref $_[0]
78 101 498 ref $_[0] eq 'HASH' ? :
81 2 597 if $opt{'case'} and $opt{'case'} ne 'lower'
84 8 591 $opt{'logic'} ? :
132 5 1773 if ($_[1] =~ /$_[0]{'injection_guard'}/mix)
157 10 37 if ($options->{'returning'})
163 47 0 wantarray ? :
197 0 21 unless $self->{'bindtype'} ne 'columns'
235 4 1 if ($self->{'array_datatypes'}) { }
294 0 32 unless ref $data eq 'HASH'
304 4 0 if ($self->{'array_datatypes'}) { }
327 0 4 if @rest or not $op =~ /^\-(.+)/
347 24 6 if ($where)
353 30 0 wantarray ? :
373 9 80 ref $fields eq 'ARRAY' ? :
379 75 14 wantarray ? :
396 4 0 wantarray ? :
412 451 46 defined $sql && length $sql ? :
415 50 447 if ($order)
421 497 0 wantarray ? :
435 1335 0 if (wantarray) { }
455 0 395 unless $logic eq 'AND' or $logic eq 'OR'
464 30 658 if defined $el and not length $el
470 15 0 if @$el
478 272 1 if %$el
490 623 1 if ($sql)
523 225 1155 if ($k =~ /^-./) { }
541 19 0 unless &List::Util::first(sub { $op =~ /$_->{'regex'}/; } , @{$$self{'unary_ops'};}) or defined $self->{'_nested_func_lhs'} and $self->{'_nested_func_lhs'} eq $k
546 44 1111 unless (length $k)
547 20 24 if (&SQL::Abstract::Util::is_literal_value($v)) { }
573 2 444 if not defined $self->{'_nested_func_lhs'} and &List::Util::first(sub { $op =~ /$_->{'regex'}/; } , @{$$self{'special_ops'};})
575 204 240 if (my $op_entry = &List::Util::first(sub { $op =~ /$_->{'regex'}/xi; } , @{$$self{'unary_ops'};}))
578 204 0 if (not ref $handler) { }
0 0 elsif (ref $handler eq 'CODE') { }
579 9 195 if ($op =~ s/ [_\s]? \d+ $//x)
602 0 207 unless defined $self->{'_nested_func_lhs'}
632 43 27 $op =~ /^or/i ? :
637 0 0 $op =~ /^or/i ? :
647 0 0 $op =~ /^or/i ? :
706 14 10 if $op =~ /^not/i
714 2 6 if (not defined $rhs or length ref $rhs)
723 2 4 $lhs ? :
737 4 8 unless (defined $rhs)
738 4 0 defined $lhs ? :
746 4 4 defined $lhs ? :
751 4 4 $lhs ? :
766 45 1 if (@$v) { }
771 22 23 defined $v[0] && $v[0] =~ /^ - (?: AND|OR ) $/xi ? :
778 22 23 if ($op)
783 22 23 $op ? :
799 151 432 defined $self->{'_nested_func_lhs'} ? :
824 28 13 if (ref $val eq 'HASH' and keys %$val == 1 and exists $val->{'-value'} and not defined $val->{'-value'})
831 1 587 if ($orig_op =~ /^ \- (and|or) $/xi) { }
137 450 elsif (my $special_op = &List::Util::first(sub { $op =~ /$_->{'regex'}/xi; } , @{$$self{'special_ops'};})) { }
837 0 137 if (not $handler) { }
134 3 elsif (not ref $handler) { }
3 0 elsif (ref $handler eq 'CODE') { }
872 32 0 $op =~ /$self->{'not_like_op'}/ ? :
20 32 $op =~ /$self->{'inequality_op'}/ ? :
9 52 $op =~ /$self->{'like_op'}/ ? :
8 61 $op =~ /$self->{'equality_op'}/ ? :
8 69 $op =~ /^not$/i ? :
883 212 0 $self->{'_nested_func_lhs'} eq $k ? :
889 7 554 defined $all_sql && $all_sql ? :
917 106 43 if (@vals) { }
920 119 33 defined $_ ? :
925 2 104 if (defined $vals[0] and $vals[0] =~ /^ - ( AND|OR ) $/xi)
933 36 4 if (@vals > 1 and !$logic || $logic eq 'OR' and $op =~ /$self->{'inequality_op'}/xi || $op =~ /$self->{'not_like_op'}/)
959 24 2 $op =~ /$self->{'not_like_op'}/ ? :
1 26 $op =~ /$self->{'inequality_op'}/ ? :
16 27 $op =~ /$self->{'like_op'}/ ? :
0 43 $op =~ /$self->{'equality_op'}/ ? :
1055 7 28 if @$vals != 2
1073 0 2 if @rest or not $func =~ /^ \- (.+)/x
1104 2 35 if defined $vals and not ref $vals
1112 22 3 if (@$vals) { }
1130 0 1 if @rest or not $func =~ /^ \- (.+)/x
1154 1 2 $op =~ /\bnot\b/i ? :
1192 6 1 if ($inner =~ /\)/)
1203 1 5 if defined $remainder and $remainder =~ /\S/
1228 46 4 @sql ? :
1236 50 0 wantarray ? :
1264 0 40 unless $key
1266 2 38 if (@rest or not $key =~ /^-(desc|asc)/i)
1319 4 1411 unless defined $_[1]
1320 2 1409 if ref $_[1] eq 'SCALAR'
1322 948 461 unless ($_[0]{'quote_char'})
1329 461 0 if (not $qref) { }
0 0 elsif ($qref eq 'ARRAY') { }
1342 0 464 $_ eq '*' ? :
1343 428 33 $_[0]{'name_sep'} ? :
1351 38 1503 if ($_[0]{'convert'})
1362 100 881 $_[0]{'bindtype'} eq 'columns' ? :
1372 30 65 if ($self->{'bindtype'} eq 'columns')
1374 10 21 if (not defined $_ or ref $_ ne 'ARRAY' or @$_ != 2)
1384 358 1052 if (@$clauses_aref > 1) { }
1052 0 elsif (@$clauses_aref) { }
1402 42 2222 $_[0]{'case'} ? :
1413 246 5042 unless defined $data
1416 2 5040 &Scalar::Util::blessed($data) ? :
1418 1896 3146 unless $ref
1423 2 106 &Scalar::Util::blessed($data) ? :
1424 106 2 if $ref
1433 2139 3136 if $try[0] eq 'SCALAR' or $try[0] eq 'UNDEF'
1443 2639 0 if $method = $self->can($meth_prefix . '_' . $_)
1456 2636 754 if $coderef = $dispatch_table->{$_}
1460 0 2636 unless $coderef
1480 0 6 unless ref $data eq 'HASH'
1488 0 1 if ($self->{'array_datatypes'}) { }
1520 0 0 if ($ref eq 'HASH') { }
0 0 elsif ($ref eq 'ARRAY') { }
0 0 elsif ($ref eq 'SCALAR') { }
1525 0 0 if ($r eq 'ARRAY') { }
0 0 elsif ($r eq 'SCALAR') { }
1544 0 0 if ($r eq 'ARRAY') { }
0 0 elsif ($r eq 'SCALAR') { }
1572 0 0 if (wantarray) { }
1576 0 0 ref $d ? :