Branch Coverage

blib/lib/DBIx/DBO/Query.pm
Criterion Covered Total %
branch 156 228 68.4


line true false branch
11 0 11 if ($] < 5.008009) { }
83 0 13 unless eval { do { $_[0]->isa('DBIx::DBO') } }
91 0 13 unless @_
98 5 7 wantarray ? :
141 14 13 if $tbl == $$me{'Tables'}[$i]
150 7 112 if $me == $tbl
153 81 31 if $me->tables == 1 and _isa($tbl, 'DBIx::DBO::Table')
184 1 5 if (@{$$me{'build_data'}{'Showing'};}) { }
185 0 2 _isa($_, 'DBIx::DBO::Table', 'DBIx::DBO::Query') ? :
191 6 12 unless @{$$me{'Columns'};}
198 8 9 if exists $$opt{'AS'}
201 0 8 if (not ref $_) { }
8 0 elsif (_isa($_, 'DBIx::DBO::Column')) { }
0 0 elsif (ref $_ eq 'SCALAR') { }
0 0 elsif (_isa($_, 'DBIx::DBO::Query')) { }
211 8 1 unless defined $func
229 0 3 unless @show = @{$$me{'build_data'}{'Showing'};}
233 2 3 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'}
241 0 50 unless defined $_check_aliases
243 6 44 if $_check_aliases == 1 and $column = $me->_check_alias($col)
245 43 1 if exists $$tbl{'Column_Idx'}{$col}
247 1 0 if $_check_aliases == 2 and $column = $me->_check_alias($col)
248 0 0 $_check_aliases ? :
254 7 23 if ref $fld eq 'ARRAY' and exists $$fld[2]{'AS'} and $col eq $$fld[2]{'AS'}
284 6 15 if (_isa($fld, 'DBIx::DBO::Table', 'DBIx::DBO::Query'))
285 1 5 unless defined $me->_table_idx($fld)
310 1 15 shift() ? :
16 0 if @_
330 9 9 if (_isa($tbl, 'DBIx::DBO::Table')) { }
0 9 elsif (_isa($tbl, 'DBIx::DBO::Query')) { }
331 1 8 if defined $me->_table_idx($tbl)
332 1 7 if $$me{'DBO'} != $$tbl{'DBO'}
335 0 0 if $$me{'DBO'} != $$tbl{'DBO'}
339 3 13 if (defined $type) { }
343 1 2 unless $type =~ /\bJOIN\b/
372 1 6 unless my $i = $me->_table_idx($t2)
389 1 5 if $$me{'build_data'}{'Join'}[$i] eq ', '
406 1 2 unless my $tbl = shift()
407 1 1 unless my $i = $me->_table_idx($tbl)
413 1 2 unless my $tbl = shift()
414 1 1 unless my $i = $me->_table_idx($tbl)
516 32 26 if (_isa($f, 'DBIx::DBO::Column')) { }
1 25 elsif (my $type = ref $f) { }
519 0 1 if $type ne 'SCALAR' and not _isa($f, 'DBIx::DBO::Query')
528 4 28 if (@_) { }
533 0 4 unless exists $$me{'build_data'}{$clause . '_Data'}
544 1 3 if (@_)
578 0 2 if defined $opt{'FORCE'} and $opt{'FORCE'} ne 'AND' and $opt{'FORCE'} ne 'OR'
582 2 26 if $op eq '!='
583 2 15 if (@$val == 1 and not defined $$val[0] and not defined $val_func)
584 1 1 if ($op eq '=') { }
1 0 elsif ($op eq '<>') { }
589 19 9 unless (defined $val_func)
590 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) { }
591 1 2 if ref $val ne 'ARRAY' or @$val != 2
595 3 0 if (ref $val eq 'ARRAY') { }
596 0 3 if @$val == 0
602 3 0 unless ($opt{'FORCE'} and $opt{'FORCE'} ne $op_ag)
605 0 1 if "@{$$lim[1];}" ne "@$fld"
606 0 1 if $$lim[7] and $$lim[7] ne $op_ag
607 0 1 if $$lim[5] ne '(' . join(',', ($$me{'DBO'}{'dbd_class'}->PLACEHOLDER) x @{$$lim[4];}) . ')'
644 0 3 unless $ag and $ag =~ /^(AND|OR)$/
645 1 2 @$brackets ? :
646 3 0 if ($ag ne $last)
663 0 3 unless my $ag = pop @{$brackets;}
664 1 2 @$brackets ? :
665 3 0 if $last ne $ag
777 14 4 unless defined $rows
827 0 3 unless my $sth = $me->rdbh->prepare($sql, $attr)
828 1 2 unless (defined $$attr{'Columns'})
830 1 0 if ($$sth{'NUM_OF_FIELDS'}) { }
833 0 0 unless $sth->execute(@bind)
835 0 0 if (my $max = $$attr{'MaxRows'}) { }
859 0 30 unless $me->_sth and $$me{'Active'} || $me->run
862 0 30 if (defined $$me{'Row'} and SvREFCNT(${$$me{'Row'};}) > 1)
867 30 0 if (exists $$me{'cache'}) { }
868 26 4 if ($$me{'cache'}{'idx'} < @{$$me{'cache'}{'data'};})
878 0 0 if ($$$row{'array'} = $$me{'sth'}->fetch)
914 11 4 if (defined $$me{'Row'})
919 0 15 unless my $rv = $me->_execute
922 15 0 if ($me->config('CacheQuery')) { }
934 0 15 unless $me->_sth
940 14 1 unless ($$me{'hash'})
943 14 0 if ($me->config('CacheQuery')) { }
948 30 6 unless exists $hash{$_}
955 0 0 unless exists $$me{'hash'}{$_}
974 1 0 unless defined $$me{'Row_Count'}
997 2 0 if $old_sb
1015 1 0 unless defined $$me{'Found_Rows'}
1028 18 139 ref $$_[0] eq 'ARRAY' ? :
1037 0 132 if grep(($me eq $_), @_RECURSIVE_SQ)
1040 0 118 if (ref $fld eq 'ARRAY' and @{$$fld[0];} == 1 and _isa($$fld[0][0], 'DBIx::DBO::Query'))
1042 0 0 if ($sq->sql ne ($$me{'build_data'}{'_subqueries'}{$sq} ||= ''))
1049 0 146 if (_isa($sq, 'DBIx::DBO::Query'))
1050 0 0 if ($sq->sql ne ($$me{'build_data'}{'_subqueries'}{$sq} ||= ''))
1056 13 133 $_ ? :
1057 0 50 if (@$w == 1 and _isa($$w[0], 'DBIx::DBO::Query'))
1059 0 0 if ($sq->sql ne ($$me{'build_data'}{'_subqueries'}{$sq} ||= ''))
1066 0 228 if (@$w == 1 and _isa($$w[0], 'DBIx::DBO::Query'))
1068 0 0 if ($sq->sql ne ($$me{'build_data'}{'_subqueries'}{$sq} ||= ''))
1074 31 101 unless $$me{'sql'}
1085 19 12 if (defined $$me{'Row'})
1086 0 19 if (SvREFCNT(${$$me{'Row'};}) > 1) { }
1142 6 12 if (defined $$me{'Row'})
1143 0 6 if (SvREFCNT(${$$me{'Row'};}) > 1) { }
1150 5 13 if (exists $$me{'cache'}) { }
1153 0 13 if $$me{'sth'} and $$me{'sth'}{'Active'}
1194 28 192 if @_
1200 3 2 unless defined $$me{'sth'}
1204 0 2 unless exists $$me{'cache'}
1205 0 2 unless exists $$me{'cache'}
1206 2 0 if exists $$me{'cache'}