Condition Coverage

blib/lib/Respite/Validate.pm
Criterion Covered Total %
condition 122 203 60.1


and 3 conditions

line !l l&&!r l&&r condition
19 246 4 4 $ARGS->{'validate_if'} and not $self->check_conditional($form, $ARGS->{'validate_if'})
30 268 0 0 not ref $ref and $ref eq "OR"
45 15 0 0 $not and $_key =~ /(?$opt:$pat)/
69 113 1 0 $i < $fields->$#* and not ref $$fields[$i + 1]
114 0 0 $i < $fields->$#* and not ref $$fields[$i + 1] and $$fields[$i + 1] eq "OR"
252 0 0 0 $not and $_field =~ /(?$opt:$pat)/
267 327 1 7 $fv->{'was_valid'} and not $self->{'was_valid'}{$field}
268 325 0 3 $fv->{'had_error'} and not $self->{'had_error'}{$field}
269 325 0 0 $fv->{'was_checked'} and not $self->{'was_checked'}{$field}
271 254 69 2 not exists $form->{$field} and $fv->{'alias'}
280 318 7 0 defined $fv->{'default'} and !defined($form->{$field}) || (ref $form->{$field} eq 'ARRAY' ? !@{$form->{$field};} : !length($form->{$field}))
343 320 0 5 $modified and $n_values == 1
354 13 295 17 not $needs_val and $n_vif
370 248 35 25 $is_required and $n_values == 0 || $n_values == 1 && !(defined $values->[0] && length $values->[0])
400 18 1 23 defined $_value and length $_value
403 7 4 3 $minmax eq "min" and $n > 0
4 4 3 $minmax eq "max" and $n < 0
420 6 17 7 defined $value and $_ eq $value
436 41 0 17 ref $fv->{'type'} eq "HASH" and $form->{$field}
455 0 1 1 defined $value && $value eq $2
458 2 0 5 exists $form->{$field2} and defined $form->{$field2}
459 1 2 2 defined $value && $value eq $form->{$field2}
482 12 14 1 defined $value and length $value > $n
495 0 2 4 defined $value and $value =~ /$rx/
505 1 1 1 defined $value and $value =~ /(?$opt:$pat)/
10 2 1 $not and (defined $value and $value =~ /(?$opt:$pat)/)
576 0 0 0 not $return and $$fv{"${type}_error_if"}
0 0 0 $return and not $$fv{"${type}_error_if"}
592 0 1 1 not ref $@ and defined $err
605 254 0 0 $fv->{'untaint'} and $#errors == -1
649 0 0 0 $value and not $self->check_type($value, "uri")
686 120 0 1 defined $custom_err and length $custom_err

or 2 conditions

line l !l condition
11 0 254 $args || {}
105 10 16 $field_prefix ||= ""
106 10 16 $self->{'_recurse'} || 0
183 254 0 $fields || []
223 0 2 $ref->{'max_values'} ||= scalar @{$form->{$field};}
236 27 308 $field_prefix ||= ""
237 59 276 $self->{'_recurse'} || 0
376 5 0 $fv->{'min_values'} || 0
382 0 228 $fv->{'min_values'} || 1
383 281 0 $fv->{'max_values'} || 0
391 14 537 $_->[1] || (next)
527 15 4 $value || 0
697 0 240 $fv->{$key} || $extra->{$key} || (next)

or 3 conditions

line l !l&&r !l&&!r condition
36 268 0 0 $ref->{'field'} || throw('Missing field key during normal validation')
45 0 9 6 $not || $_key =~ /(?$opt:$pat)/
0 6 9 $not and $_key =~ /(?$opt:$pat)/ or not $not || $_key =~ /(?$opt:$pat)/
82 16 0 234 $ARGS->{'no_extra_fields'} or $self->{'no_extra_fields'}
141 0 0 254 not $val_hash or ref $val_hash ne "HASH"
147 0 1 253 $ARGS{'fields'} || $ARGS{'order'}
190 38 2 0 not ref $ifs or ref $ifs eq "HASH"
219 40 0 0 $ref->{'field'} || throw('Missing field key during validate_if (possibly used a reference to a main hash *foo -> &foo)')
252 0 0 0 $not || $_field =~ /(?$opt:$pat)/
0 0 0 $not and $_field =~ /(?$opt:$pat)/ or not $not || $_field =~ /(?$opt:$pat)/
280 5 0 2 !defined($form->{$field}) || (ref $form->{$field} eq 'ARRAY' ? !@{$form->{$field};} : !length($form->{$field}))
329 0 0 3 $2 > $start->$#* || $2 == 0
370 0 25 35 $n_values == 0 || $n_values == 1 && !(defined $values->[0] && length $values->[0])
403 3 3 8 $minmax eq "min" and $n > 0 or $minmax eq "max" and $n < 0
474 1 2 1 not defined $value or length $value < $n
505 2 5 5 $not || defined $value && $value =~ /(?$opt:$pat)/
1 5 7 $not and (defined $value and $value =~ /(?$opt:$pat)/) or not $not || defined $value && $value =~ /(?$opt:$pat)/
570 0 0 0 &$dbh($field, $self) || throw('SQL Coderef did not return a dbh')
576 0 0 0 not $return and $$fv{"${type}_error_if"} or $return and not $$fv{"${type}_error_if"}
629 0 0 0 $self->check_type($dom, "domain") or $self->check_type($dom, "ip")
641 0 0 9 not $value or length $value > 255
642 3 1 5 not $value =~ /^(?:[a-z0-9][a-z0-9\-]{0,62} \.)+ [a-z0-9][a-z0-9\-]{0,62}$/xi or $value =~ /(?:\.\-|\-\.|\.\.)/
648 0 0 0 $self->check_type($dom, "domain") or $self->check_type($dom, "ip")
667 0 0 0 length $value > 16 or length $value < 13
690 0 120 0 $fv->{'name'} || $field
707 12 1 107 $type eq "required" or $type eq "required_if"
721 0 5 0 $$fv{"equals${dig}_name"} || "the field $field2"