Branch Coverage

blib/lib/DBIx/Class/SQLMaker/LimitDialects.pm
Criterion Covered Total %
branch 80 94 85.1


line true false branch
55 43 1508 if ($offset)
72 2 1 if ($offset)
111 4 10 if (my $extra_order_sel = $sq_attrs->{'order_supplement'})
125 16 12 unless $map
167 0 10 unless $sql =~ s/^ \s* SELECT \s+ //xi
178 8 2 $offset ? :
198 0 10 unless $sql =~ s/^ \s* SELECT \s+ //xi
207 8 2 $offset ? :
257 4 10 unless ($offset)
278 3 7 if ($rs_attrs->{'order_by'} and $rs_attrs->{'result_source'}->storage->_order_by_is_stable(@{$rs_attrs;}{'from', 'order_by', 'where'})) { }
320 9 40 if (not $rs_attrs->{'offset'}) { }
331 25 15 if ($sq_attrs->{'order_by_requested'}) { }
338 0 25 unless $rs_attrs->{'result_source'}->schema->storage->_order_by_is_stable($rs_attrs->{'from'}, $requested_order, $rs_attrs->{'where'})
350 0 15 unless $rs_attrs->{'result_source'}->_identifying_column_set
359 22 34 if ref $ch eq 'ARRAY'
364 9 47 $is_desc ? :
371 19 21 if (my $extra_order_sel = $sq_attrs->{'order_supplement'})
391 29 51 unless $map
432 21 5 $offset ? :
440 21 5 if $offset
449 13 8 if $offset and $lim->{'order_by_requested'} || $lim->{'selection_middle'} ne $lim->{'selection_outer'}
486 19 4 $offset ? :
494 19 4 if $offset
505 12 7 if $offset and $lim->{'order_by_requested'} || $lim->{'selection_middle'} ne $lim->{'selection_outer'}
544 0 24 unless $rs_attrs->{'order_by'}
553 0 24 unless $usable_order_colinfo
556 0 24 if not keys %{{} unless $usable_order_colinfo;} or grep {$_->{'-source_alias'} ne $rs_attrs->{'alias'};} values %$usable_order_colinfo
569 72 12 ref $_ ? :
578 15 9 if ($self->quote_char)
598 38 32 $is_desc ? :
606 38 32 $is_desc[$i] ? :
615 24 46 if ($ci->{'is_nullable'})
618 14 10 $is_desc[$i] ? :
14 10 $is_desc[$i] ? :
642 15 9 if ($offset) { }
663 0 24 if @{$self->{'order_bind'};}
721 0 101 unless ref $rs_attrs eq 'HASH'
726 0 101 unless ($rs_attrs->{'_selector_sql'} and $proto_sql =~ s/^ \s* SELECT \s* \Q$rs_attrs->{'_selector_sql'}\E//xi)
741 0 425 ref $s eq 'HASH' ? :
763 384 41 unless $sql_sel =~ / (?: ^ | \W ) \? (?: \W | $ ) /x
765 0 425 if $sql_alias
770 378 47 if (not ref $s and $sql_sel =~ / $re_sep (.+) $/x)
785 163 262 if (not $$in_sel_index{$node->{'sql'}} or $node->{'as'} =~ / (?<! ^ $re_alias ) \. /x or $node->{'unquoted_sql'} =~ / (?<! ^ $re_alias ) $re_sep /x) { }
800 0 262 ref $node->{'arg'} ? :
808 106 30 if ref $chunk eq 'ARRAY'
811 81 55 if $in_sel_index->{$chunk}
814 0 55 unless $extra_order_sel