Branch Coverage

blib/lib/DBIx/SearchBuilder.pm
Criterion Covered Total %
branch 183 234 78.2


line true false branch
221 131 3143 if (@_)
238 42 131 if ($self->{'_combine_search_and_count'})
244 122 9 unless $self->{'_bind_values'}
256 0 175 unless $records
261 40 815 if (not defined $self->{'count_all'} and $row->{'search_builder_count_all'})
269 0 175 if $records->err
298 27 1695 unless defined $self->{'items'}
315 2 68 if ($self->{'_combine_search_and_count'})
327 65 7 unless $self->{'_bind_values'}
328 0 72 unless $records
331 0 72 if $records->err
348 44 0 unless $self->{'_bind_values'}
377 38 160 if $self->{'columns'} and @{$self->{'columns'};}
433 137 146 if (keys %{$$self{'left_joins'};}) { }
452 0 0 if ($self->RowsPerPage) { }
454 0 0 if ($self->FirstRow != 0)
475 356 2005 if (@_) { }
508 86 68 if $self->_isLimited > 0
519 5 149 if (my $clause = $self->_GroupClause) { }
55 94 elsif (not $self->{'joins_are_distinct'} and $self->_isJoined) { }
553 71 11 if $self->_isLimited > 0
559 41 41 if ($self->_isJoined) { }
582 28 16 if $self->_isLimited > 0
589 0 44 if (my $clause = $self->_GroupClause) { }
41 3 elsif (not $self->{'joins_are_distinct'} and $self->_isJoined) { }
623 3 1496 unless $self->_isLimited
625 148 1348 if $self->{'must_redo_search'}
627 1373 123 if ($self->{'itemscount'} < $self->_RecordCount) { }
699 2 2 if $self->{'must_redo_search'}
733 4 0 @_ % 2 ? :
741 2 2 if $self->_isLimited > 0
749 4 0 if ($args{'Order'})
751 2 2 $args{'Order'} =~ /^des/i ? :
756 4 0 $list ? :
771 1 24 unless $self->_isLimited
774 21 3 if $self->{'must_redo_search'}
822 83 0 if (@_)
823 83 0 if ($self->_Handle->HasSupportForCombineSearchAndCount) { }
827 0 0 unless $unsupported_combine_search_and_count_logged
980 112 1 unless ($args{'ENTRYAGGREGATOR'})
981 2 110 if ($args{'LEFTJOIN'}) { }
992 113 0 if ($args{'OPERATOR'})
994 8 105 if ($args{'OPERATOR'} =~ /LIKE/i) { }
1 104 elsif ($args{'OPERATOR'} =~ /STARTSWITH/i) { }
1 103 elsif ($args{'OPERATOR'} =~ /ENDSWITH/i) { }
58 45 elsif ($args{'OPERATOR'} =~ /\bIN$/i) { }
1004 3 55 if (&blessed($args{'VALUE'}) and $args{'VALUE'}->isa('DBIx::SearchBuilder')) { }
55 0 elsif (ref $args{'VALUE'}) { }
1007 1 2 $args{'VALUE'}{'columns'} ? :
1017 55 0 if ($args{'QUOTEVALUE'}) { }
1032 10 103 if ($args{'OPERATOR'} =~ /IS/i)
1038 43 70 if ($args{'QUOTEVALUE'})
1047 0 113 unless $Alias
1054 113 0 if (defined $Alias) { }
1085 2 111 if (defined $args{'LEFTJOIN'} and not defined $args{'ALIAS'})
1091 47 66 unless ($args{'ALIAS'})
1094 47 0 if ($args{'TABLE'} eq $self->Table) { }
1118 2 111 if ($args{'LEFTJOIN'}) { }
1119 2 0 if ($args{'ENTRYAGGREGATOR'})
1133 103 10 if ($self->_Handle->CaseSensitive and defined $args{'VALUE'} and $args{'VALUE'} ne "" and $args{'VALUE'} ne "''" and not $args{'OPERATOR'} =~ /IS/ || $args{'VALUE'} =~ /^null$/i)
1135 43 60 unless ($args{'CASESENSITIVE'} or not $args{'QUOTEVALUE'})
1151 1 112 if ($self->{'_open_parens'}{$ClauseId})
1155 109 4 if (lc($args{'ENTRYAGGREGATOR'} || '') eq 'none' or not @$restriction) { }
1203 0 178 if $where_clause
1207 178 9 if $where_clause
1221 17 178 if $result
1224 201 10 if (ref $entry) { }
1269 88 1 if ($self->_OrderClause ne $old_value)
1283 191 322 unless $self->{'order_by'}
1295 144 178 if ($rowhash{'ORDER'} and $rowhash{'ORDER'} =~ /^des/i) { }
1297 0 144 if $nulls_order
1301 0 178 if $nulls_order
1303 0 322 unless defined $rowhash{'ALIAS'}
1305 322 0 if (defined $rowhash{'ALIAS'} and $rowhash{'FIELD'} and $rowhash{'ORDER'})
1309 72 250 if (length $rowhash{'ALIAS'} and $rowhash{'FIELD'} =~ /^(.*\()(.*\))$/)
1315 0 322 $clause ? :
1316 322 0 if length $rowhash{'ALIAS'}
1321 322 0 if $clause
1340 5 0 if ($self->_GroupClause ne $old_value)
1353 262 42 unless $self->{'group_by'}
1357 0 42 unless my $part = $self->CombineFunctionWithField(%$row)
1360 0 42 if $clause
1364 0 42 unless $clause
1389 0 6 @_ % 2 ? :
1395 0 6 if $self->_Handle->QuoteTableNames
1396 0 0 do { lc $type eq 'left' } ? :
0 6 $type ? :
1407 1 5 if ($args{'DISTINCT'} and not defined $self->{'joins_are_distinct'}) { }
5 0 elsif (not $args{'DISTINCT'}) { }
1504 53 440 if (@_ and ($_[0] || 0) != $self->{'show_rows'})
1531 2 1 if ($self->FirstRow - $self->RowsPerPage > 0) { }
1578 37 227 if (@_ and ($_[0] || 1) != $self->{'first_row'} + 1)
1615 7 62 unless $self->_isLimited
1617 47 15 if ($self->{'must_redo_search'})
1618 2 45 if ($self->RowsPerPage) { }
1643 0 128 unless $self->_isLimited
1648 70 58 if ($self->{'must_redo_search'} or $self->RowsPerPage and not defined $self->{'count_all'}) { }
25 33 elsif ($self->RowsPerPage) { }
1678 4 5 unless $self->Count
1680 3 2 if ($self->_ItemsCounter == $self->Count) { }
1758 64 2 unless (defined $column or exists $args{'AS'})
1759 60 4 if ($args{'FIELD'} and $args{'ALIAS'} eq 'main' and !$args{'TABLE'} || $args{'TABLE'} eq $self->Table) { }
1766 24 36 if ($self->{'columns'})
1768 21 3 if (grep((index($_, $suffix, -length($suffix)) >= 0), @{$$self{"columns"};}))
1777 66 2 defined $column ? :
1854 9 216 unless ($args{'FIELD'})
1859 185 31 unless $args{'FUNCTION'}
1862 0 31 if ($func =~ /^DISTINCT\s*COUNT$/i) { }
26 5 elsif ($func =~ s/\?/$field/g) { }
1 7 elsif (not $func =~ /\(/ and lc $func ne 'null') { }
1907 1 0 unless grep {/^main\.\*$/;} @{$$self{"columns"};}
1938 0 0 unless my $table = $args{'TABLE'}
1939 0 0 unless my $field = $args{'FIELD'}
1954 129 541 if @_
1973 0 307 if @_
1986 0 243 $QueryHint ? :
1997 32 248 if ($args{'PreferBind'})