Condition Coverage

blib/lib/Data/Domain.pm
Criterion Covered Total %
condition 108 155 69.6


and 3 conditions

line !l l&&!r l&&r condition
73 0 4 1 !ref($_->[0]) && $_->[0] =~ /^!/
267 1 1 1 not ref $data and $data->isa($data)
408 0 0 13 &does($range, "ARRAY") and @$range == 2
426 87 18 21 defined $min and defined $max
489 129 24 123 @$args_ref and $args_ref->[0] =~ /^-/
544 24 2 0 $self->{'-defined'} and $self->{'-optional'}
647 0 20 56 defined $data and $data =~ /^-?\d+$/
664 0 1 2 defined $data and $data =~ /^\d+$/
808 14 1 6 $self->{$bound} and not $self->{$bound} =~ /$dynamic_date/
845 4 0 14 @date and check_date(@date)
883 1 0 8 $h <= 23 && $m <= 59 && $s <= 59
921 2 0 4 $self->{$bound} and $self->{$bound} ne "now"
923 0 0 4 @time and _valid_time(@time)
940 1 1 4 @t and _valid_time(@t)
1044 10 0 0 $self->{$bound} and $self->{$bound} < @{$self->{'-items'};}
1068 30 6 1 defined $self->{'-min_size'} and @$data < $self->{'-min_size'}
1072 30 5 1 defined $self->{'-max_size'} and @$data > $self->{'-max_size'}

or 2 conditions

line l !l condition
881 9 0 $m ||= 0
882 0 9 $s ||= 0
1079 11 22 $context ||= {"root", $data, "flat", {}, "path", []}
1087 19 14 $self->{'-items'} || []
1158 12 2 $self->{'-fields'} || []
1220 103 26 $context ||= {"root", $data, "flat", {}, "list", [], "path", []}

or 3 conditions

line l !l&&r !l&&!r condition
214 0 0 3 ref $class or $class ne "Data::Domain"
360 6 234 0 $self->{'-name'} || $subclass
383 172 56 0 $global_msgs->{$subclass}{$msg_id} || $global_msgs->{'Generic'}{$msg_id}
392 367 0 0 ref $self || $self
400 10 117 0 $self->{'-name'} || $self->subclass
700 158 1 3 not ref $data or overload::Method($data, "\"\"")
851 0 2 4 not check_date(@$min) or _date_cmp(\@date, $min) < 0
857 0 1 2 not check_date(@$max) or _date_cmp(\@date, $max) > 0
900 7 0 0 $t1->[0] <=> $t2->[0] || ($t1->[1] || 0) <=> ($t2->[1] || 0) || ($t1->[2] || 0) <=> ($t2->[2] || 0)
1076 19 8 8 $self->{'-items'} or $self->{'-all'}
8 6 2 $self->{'-items'} or $self->{'-all'} or $self->{'-any'}
1097 8 6 36 $has_invalid ||= $msgs[$i]
1110 3 3 22 $has_invalid ||= $msgs[$i]
1123 0 1 0 $any->[0]{'-name'} || $any->[0]->subclass
1135 0 4 0 $subdomain->{'-name'} || $subdomain->subclass
1179 1 1 1 &does($exclude, "ARRAY") or &does($exclude, "Regexp")
2 1 0 &does($exclude, "ARRAY") or &does($exclude, "Regexp") or not ref $exclude
1187 2 0 0 &does($dom, "Data::Domain::List") or &does($dom, "CODE")
1210 3 3 2 match::simple::match($field, $exclude) or match::simple::match($exclude, ["*", "all"])
1233 7 8 239 $has_invalid ||= $msg

xor 4 conditions

line l&&r l&&!r !l&&r !l&&!r condition
263 2 2 2 2 &Scalar::Util::blessed($data) xor $self->{'-blessed'}
267 1 0 2 0 not ref $data and $data->isa($data) xor $self->{'-package'}
271 0 0 0 0 &Scalar::Util::isweak($data) xor $self->{'-isweak'}
275 0 0 0 0 &Scalar::Util::readonly($data) xor $self->{'-readonly'}
279 0 0 0 0 &Scalar::Util::readonly($data) xor $self->{'-tainted'}
286 2 2 3 4 $data xor $self->{'-true'}
290 1 1 2 2 ref $data xor $self->{'-ref'}
554 3 3 2 1 defined $data xor $self->{'-defined'}