Branch Coverage

blib/lib/DBIx/DBO/Query.pm
Criterion Covered Total %
branch 167 206 81.0


line true false branch
77 0 29 unless eval { do { $_[0]->isa("DBIx::DBO") } }
85 1 28 unless @_
92 5 20 wantarray ? :
135 17 17 if $tbl == $me->{'Tables'}[$i]
144 12 438 if $me == $tbl
147 339 99 if $me->tables == 1 and _isa($tbl, "DBIx::DBO::Table")
169 1 2 if (@{$me->{'build_data'}{'select'};}) { }
171 1 1 _isa($_, 'DBIx::DBO::Table', 'DBIx::DBO::Query') ? :
176 3 5 unless @{$me->{'Columns'};}
183 11 15 if exists $opt->{'AS'}
186 0 9 if (not ref $_) { }
8 1 elsif (_isa($_, 'DBIx::DBO::Column')) { }
0 1 elsif (ref $_ eq 'SCALAR') { }
1 0 elsif (_isa($_, 'DBIx::DBO::Query')) { }
196 9 6 unless defined $func
214 2 4 unless @show = @{$me->{'build_data'}{'select'};}
219 3 4 if _isa($fld, "DBIx::DBO::Table") and exists $fld->{'Column_Idx'}{$col} or _isa($fld, "DBIx::DBO::Query") and eval { do { $fld->column($col) } } or ref $fld eq "ARRAY" and exists $fld->[2]{'AS'} and $col eq $fld->[2]{'AS'}
226 0 51 unless defined $_check_aliases
228 6 45 if $_check_aliases == 1 and $column = $me->_check_alias($col)
230 44 1 if exists $tbl->{'Column_Idx'}{$col}
232 1 0 if $_check_aliases == 2 and $column = $me->_check_alias($col)
233 0 0 $_check_aliases ? :
240 7 24 if ref $fld eq "ARRAY" and exists $fld->[2]{'AS'} and $col eq $fld->[2]{'AS'}
267 7 23 if (_isa($fld, "DBIx::DBO::Table", "DBIx::DBO::Query"))
268 1 6 unless defined $me->_table_idx($fld)
292 1 28 shift() ? :
29 0 if @_
312 21 15 if (_isa($tbl, 'DBIx::DBO::Table')) { }
2 13 elsif (_isa($tbl, 'DBIx::DBO::Query')) { }
313 1 20 if defined $me->_table_idx($tbl)
314 2 18 if $me->{'DBO'} != $tbl->{'DBO'}
317 0 2 if $me->{'DBO'} != $tbl->{'DBO'}
323 4 27 if (defined $type) { }
327 1 3 unless $type =~ /\bJOIN\b/u
352 1 8 unless my $i = $me->_table_idx($t2)
368 1 6 if $me->{'build_data'}{'join_types'}[$i] eq ", "
385 1 2 unless my $tbl = shift()
386 1 1 unless my $i = $me->_table_idx($tbl)
392 1 2 unless my $tbl = shift()
393 1 1 unless my $i = $me->_table_idx($tbl)
497 32 28 if (_isa($f, 'DBIx::DBO::Column')) { }
3 25 elsif (my $type = ref $f) { }
500 0 3 if $type ne "SCALAR" and not _isa($f, "DBIx::DBO::Query")
509 4 54 if (@_) { }
514 0 4 unless exists $me->{'build_data'}{$clause}
525 1 3 if (@_)
559 0 2 if defined $opt{'FORCE'} and $opt{'FORCE'} ne "AND" and $opt{'FORCE'} ne "OR"
562 2 28 if $op eq "!="
563 2 15 if (@$val == 1 and not defined $val->[0] and not defined $val_func)
564 1 1 if ($op eq '=') { }
1 0 elsif ($op eq '<>') { }
569 19 11 unless (defined $val_func)
570 3 16 if ($op eq 'BETWEEN' or $op eq 'NOT BETWEEN') { }
3 13 elsif ($op eq 'IN' or $op eq 'NOT IN') { }
1 12 elsif (@$val != 1) { }
571 1 2 if ref $val ne "ARRAY" or @$val != 2
575 3 0 if (ref $val eq 'ARRAY') { }
576 0 3 if @$val == 0
582 3 0 unless ($opt{'FORCE'} and $opt{'FORCE'} ne $op_ag)
585 0 1 if join($", @{$lim->[1];}) ne join($", @$fld)
586 0 1 if $lim->[7] and $lim->[7] ne $op_ag
587 0 1 if $lim->[5] ne '(' . join(",", ($me->{'DBO'}{'dbd_class'}->PLACEHOLDER) x @{$lim->[4];}) . ')'
624 0 3 unless $ag and $ag =~ /^(AND|OR)$/u
625 1 2 @$brackets ? :
626 3 0 if ($ag ne $last)
643 0 3 unless my $ag = pop @{$brackets;}
644 1 2 @$brackets ? :
645 3 0 if $last ne $ag
753 27 4 unless defined $rows
803 0 3 unless my $sth = $me->rdbh->prepare($sql, $attr)
804 1 2 unless (defined $attr->{'Columns'})
806 1 0 if ($sth->{'NUM_OF_FIELDS'}) { }
809 0 0 unless $sth->execute(@bind)
811 0 0 if (my $max = $attr->{'MaxRows'}) { }
835 0 31 unless exists $me->{'cache'} or $me->{'Active'} or $me->run
838 8 23 if (defined $me->{'Row'} and &SvREFCNT(\${$$me{"Row"};}) > 1)
843 1 30 if (exists $me->{'cache'}) { }
844 1 0 if ($me->{'cache'}{'idx'} < @{$me->{'cache'}{'data'};})
854 26 4 if ($$row->{'array'} = $me->{'sth'}->fetch)
890 12 8 if (defined $me->{'Row'})
898 0 20 unless my $rv = $me->_execute
902 1 19 if ($me->config('CacheQuery')) { }
915 2 18 if ($me->{'sth'}) { }
928 18 2 unless ($me->{'hash'})
931 1 17 if ($me->config('CacheQuery')) { }
936 4 3 unless exists $hash{$_}
943 38 6 unless exists $me->{'hash'}{$_}
961 1 0 unless defined $me->{'Row_Count'}
984 2 0 if $old_sb
1037 4 8 if (grep(($upquery eq $_), @_recursion_check))
1042 3 5 if exists $upquery->{'up_queries'}
1067 8 323 if (exists $me->{'up_queries'})
1096 0 4 if (exists $me->{'cache'}) { }
1099 3 1 if $me->{'sth'} and $me->{'sth'}{'Active'}
1107 57 278 if (defined $me->{'Row'})
1108 4 53 if (&SvREFCNT(\${$$me{'Row'};}) > 1) { }
1153 33 451 if @_
1159 3 2 unless defined $me->{'sth'}
1164 2 0 unless exists $me->{'cache'}
1165 2 0 unless exists $me->{'cache'}
1166 0 2 if exists $me->{'cache'}
1177 13 12 if (my $attached_rows = delete $_[0]{'attached_rows'} and ${^GLOBAL_PHASE} ne "DESTRUCT")
1179 11 3 if defined $row