Branch Coverage

blib/lib/Search/Query/Dialect/KSx.pm
Criterion Covered Total %
branch 143 176 81.2


line true false branch
96 3 176 if ($$self{'default_field'} and not ref $$self{'default_field'})
117 152 4 if ($self->parser->default_boolop eq '+') { }
133 210 112 unless exists $$tree{$prefix}
137 0 111 unless @clauses
139 147 0 if defined $_
150 8 144 if ($self->fuzzify)
151 6 2 unless $value =~ /[\*]/
172 32 117 if ($$clause{'op'} eq '()')
174 17 15 if ($clause->has_children and $clause->has_children == 1) { }
175 1 16 if ($prefix eq '-') { }
181 4 12 if ($str =~ /^\(/) { }
190 2 13 if ($prefix eq '-') { }
191 0 2 if ($str =~ /^\(/) { }
206 3 114 if ($proximity)
216 19 14 defined $default_field ? :
84 33 $$clause{'field'} ? :
221 11 106 ref $$clause{'value'} ? :
227 14 103 unless (@fields)
228 0 14 if $self->debug
230 1 13 $prefix eq '-' ? :
238 20 83 if ($prefix eq '-')
239 20 0 unless $op =~ /^!/
241 23 80 if ($value =~ /[\*\?]|\Q$wildcard\E/)
243 1 22 if ($value eq '*' or $value eq '?')
244 1 0 unless ($self->allow_single_wildcards)
254 0 147 if (defined $field->callback)
260 0 147 if $self->debug
264 2 145 if ($op eq '!~') { }
35 110 elsif ($op eq '~') { }
27 83 elsif ($op eq '!:') { }
5 78 elsif ($op eq '..') { }
6 72 elsif ($op eq '!..') { }
265 0 2 unless $value =~ /\Q$wildcard\E/
276 2 33 unless $value =~ /\Q$wildcard\E/
293 0 5 if (ref $value ne 'ARRAY' or @$value != 2)
307 0 6 if (ref $value ne 'ARRAY' or @$value != 2)
324 20 82 $prefix eq '-' ? :
326 15 87 scalar @buf > 1 ? :
15 87 scalar @buf > 1 ? :
353 96 51 unless exists $$tree{$prefix}
357 55 15 if (defined $$clause{'field'})
361 0 51 unless @clauses
364 11 40 $joiner eq 'NOT' ? :
366 1 50 if ($prefix eq '-' and @clauses > 1)
374 38 13 if (@clauses == 1) { }
0 13 elsif (not $has_explicit_fields and $prefix eq '-') { }
375 3 35 if ($prefix eq '-' and $has_explicit_fields and not $clauses[0]->isa($ks_class)) { }
400 47 2 @q == 1 ? :
413 17 53 if ($$clause{'op'} eq '()')
420 15 0 defined $default_field ? :
38 15 $$clause{'field'} ? :
425 7 46 ref $$clause{'value'} ? :
432 0 53 unless (@fields)
442 12 41 if ($prefix eq '-')
443 12 0 unless $op =~ /^!/
445 13 40 if ($value =~ /[\*\?]|\Q$wildcard\E/)
447 0 13 if ($value eq '*' or $value eq '?')
448 0 0 unless ($self->allow_single_wildcards)
455 7 46 $quote eq '"' ? :
462 0 95 if (defined $field->callback)
468 0 95 if $self->debug
472 3 92 if ($op eq '..') { }
4 88 elsif ($op eq '!..') { }
473 0 3 if (ref $value ne 'ARRAY' or @$value != 2)
492 0 4 if (ref $value ne 'ARRAY' or @$value != 2)
512 0 88 if $self->debug
516 83 5 if (blessed($field->analyzer) and not ref $value)
519 27 56 if ($value =~ /[$wildcard\*\?]/) { }
532 27 0 if ($field->analyzer->isa('KinoSearch::Analysis::PolyAnalyzer')) { }
0 0 elsif ($field->analyzer->isa('KinoSearch::Analysis::Stemmer')) { }
538 27 54 if ($ana->isa('KinoSearch::Analysis::Stemmer'))
550 27 0 if ($stemmer)
552 18 9 if ($tok =~ s/^(\w+)\*$/$1/)
566 69 0 if defined $_
571 0 88 if $self->debug
573 16 72 if ($is_phrase or @values > 1) { }
574 12 4 if ($proximity) { }
576 4 8 if ($self->ignore_order_in_proximity) { }
592 0 4 if $self->debug
625 0 72 unless (defined $term and length $term)
630 2 70 if ($op eq '!~' or $op eq '!:' and $term =~ /[$wildcard\*\?]/) { }
26 44 elsif ($op eq '~' or $op eq ':' and $term =~ /[$wildcard\*\?]/) { }
16 28 elsif ($op eq '!:') { }
633 0 2 unless $term =~ /\Q$wildcard\E/
646 1 1 if ($prefix eq '-') { }
675 2 24 unless $term =~ /\Q$wildcard\E/
712 39 14 if (@buf == 1)
715 2 12 $prefix eq '-' ? :