Branch Coverage

Bio/Location/Fuzzy.pm
Criterion Covered Total %
branch 76 100 76.0


line true false branch
154 546 8 if $location_type
155 0 553 if $start_ext
156 0 553 if $end_ext
157 0 553 if $start_fuz
158 0 553 if $end_fuz
175 1100 5377 if (defined $value or not defined $self->{'_location_type'})
176 554 546 unless defined $value
177 480 620 unless (defined $FUZZYCODES{$value})
179 415 65 if ($value =~ /\.\./) { }
18 47 elsif ($value =~ /^\.$/) { }
6 41 elsif ($value =~ /\^/) { }
41 0 elsif ($value =~ /\?/) { }
0 0 elsif ($value ne 'EXACT' and $value ne 'WITHIN' and $value ne 'IN-BETWEEN') { }
185 1 3 if defined $self->start and defined $self->end and $self->end - 1 == $self->start
237 555 2241 if (defined $value)
244 1 4 if $self->location_type eq 'IN-BETWEEN' and defined $self->SUPER::end and $self->SUPER::end - 1 == $self->SUPER::start
264 554 2199 if (defined $value)
271 1 4 if $self->location_type eq 'IN-BETWEEN' and defined $self->SUPER::start and $self->SUPER::end - 1 == $self->SUPER::start
292 555 3865 if (@args)
311 555 2686 if (@args)
330 0 767 if (defined $value and $value =~ /^\d+$/)
331 0 0 if ($value == 0) { }
334 0 0 unless (defined $v)
342 609 158 if (defined $value)
361 554 1879 if (@args)
380 554 3420 if (@args)
399 0 767 if (defined $value and $value =~ /^\d+$/)
400 0 0 if ($value == 0) { }
403 0 0 unless (defined $v)
412 597 170 if (defined $value)
482 11 102 if $self->location_type eq 'UNCERTAIN'
490 114 112 if ($vals{$point . '_code'} ne 'EXACT' and $vals{$point . '_code'} ne 'UNCERTAIN') { }
17 95 elsif ($vals{$point . '_code'} eq 'UNCERTAIN') { }
494 0 87 if (not defined $vals{"min_$point"} && defined $vals{"max_$point"} and $vals{$point . '_code'} eq 'WITHIN' || $vals{$point . '_code'} eq 'BETWEEN')
499 0 0 unless defined $vals{"min_$point"}
500 0 0 unless defined $vals{"max_$point"}
509 79 27 if (defined $vals{$point . '_code'} and $vals{$point . '_code'} eq 'BEFORE' || $vals{$point . '_code'} eq 'AFTER')
517 27 79 if (defined $vals{$point . '_code'} and $vals{$point . '_code'} eq 'WITHIN' || $vals{$point . '_code'} eq 'BETWEEN')
529 16 11 $point eq 'start' ? :
535 5 12 if defined $vals{$point}
542 5 108 if ($self->is_remote and $self->seq_id)
545 9 104 if (defined $self->strand and $self->strand == -1 and $self->location_type ne 'UNCERTAIN') { }
11 93 elsif ($self->location_type eq 'WITHIN') { }
582 0 1109 unless defined $string
586 1090 4741 if ($string =~ /^$pattern$/)
587 1048 42 unless $1 eq '' and not defined $2
588 587 503 if ($FUZZYPOINTENCODE{$pattern} eq 'EXACT' or $FUZZYPOINTENCODE{$pattern} eq 'UNCERTAIN') { }
593 221 282 if defined $max and length $max == 0
594 262 241 if defined $min and length $min == 0
599 0 19 if ($self->verbose >= 1)