Condition Coverage

lib/XML/Compile/Translate/Reader.pm
Criterion Covered Total %
condition 119 197 60.4


and 2 conditions

line l !l condition
1017 1 0 $no{$ns} and last

and 3 conditions

line !l l&&!r l&&r condition
86 397 0 0 &blessed($_[0]) and $_[0]->isa('XML::LibXML::Iterator')
112 0 0 4 ref $attr and $attr->isa('XML::LibXML::Attr')
139 0 7 61 $_[0] && $_[0]->currentType eq $take
168 31 5 4 keys %do == 1 and not @specials
220 1 0 6 not $@ and @d
251 3 22 5 not %specials and keys %pairs == 1
255 0 1 3 $tree && $tree->currentType eq $take
264 0 21 46 $tree && $tree->currentType
321 19 11 269 $max ne 'unbounded' and $max == 1
340 19 11 0 $max ne 'unbounded' and $min >= $max
414 12 14 495 $max ne 'unbounded' and $max == 1
430 12 12 2 $max ne 'unbounded' and $min >= $max
465 0 1 2 defined $tree and $max eq 'unbounded' || @res < $max
495 0 0 0 defined $tree and $tree->nodeType eq $childname
0 0 0 defined $tree and $tree->nodeType eq $childname and $tree->node->hasAttribute('href')
507 33 7 816 defined $tree && $tree->nodeType eq $childname
544 0 2 1 defined $v and $v eq $def
556 1 0 2 $tree && $tree->nodeType eq $childname
655 10 0 1 $is_nillable && ref $tree && $tree->nodeNil
720 0 5 9 ref $tree && $tree->nodeNil
743 0 0 1 ref $_[0] && UNIVERSAL::isa($_[0], 'XML::Compile::Iterator')
927 0 1 3 defined $value and $value eq $def
971 6 1 1 keys %yes and not $yes{$ns}
972 5 1 1 keys %no and $no{$ns}
1013 5 2 0 my $child = $tree->currentChild and $max eq 'unbounded' || $count < $max
1036 0 0 0 keys %no && $no{$ns}
0 0 0 !keys(%yes) || $yes{$ns} and not keys %no && $no{$ns}
1105 10 0 1 $replace and grep(($_ eq 'SKIP'), @$replace)

or 2 conditions

line l !l condition
654 11 0 shift() // (return ())
719 14 1 shift() // (return &$st(undef))
791 27 0 shift() // (return undef)
807 7 0 &$st(@_) // (return)
815 3 0 &$st($_[0]) // (return)
840 9 0 &$st($v) // (return undef)
848 26 0 shift() // (return undef)
970 8 0 $attr->namespaceURI || $_[0]->namespaceURI || ''
1002 4 1 $handler ||= 'SKIP_ALL'
1015 2 0 $child->namespaceURI || ''
1016 1 0 $yes{$ns} or last
1034 0 0 $child->namespaceURI || ''

or 3 conditions

line l !l&&r !l&&!r condition
112 0 0 0 ref $attr || $attr
139 6 0 80 ref $action eq 'BLOCK' || ref $action eq 'ANY'
150 32 253 47 ref $do eq 'BLOCK' || ref $do eq 'ANY' || defined $tree && $tree->currentType eq $take
165 12 0 79 ref $do{$el} eq 'BLOCK' or ref $do{$el} eq 'ANY'
248 3 0 77 ref $pairs{$el} eq 'BLOCK' or ref $pairs{$el} eq 'ANY'
331 1 0 1 not $ending or $ending != $starter
357 37 9 1 $max eq 'unbounded' or @res < $max
364 0 0 3 not $ending or $ending != $starter
389 13 5 2 $max eq 'unbounded' or @res < $max
396 0 0 0 not $ending or $ending != $starter
447 24 26 0 $max eq 'unbounded' or @res < $max
465 0 2 1 $max eq 'unbounded' || @res < $max
520 0 0 2 $tree->nodeType ne $childname or $tree->node->textContent eq ''
530 7 0 8 not defined $tree or $tree->nodeType ne $childname
7 1 7 not defined $tree or $tree->nodeType ne $childname or $tree->node->textContent eq ''
541 0 0 3 $tree->nodeType ne $childname or $tree->node->textContent eq ''
625 6 51 199 @elems > 1 or @attrs
659 10 0 0 defined $simple || @pairs
769 38 576 3 $_[1] || $_[0]
783 2 11 0 $_[1] || $_[0]
823 14 79 1 @$early or @$late
913 0 2 1 !defined($v) || $v eq $def
1013 2 0 0 $max eq 'unbounded' || $count < $max
1036 0 0 0 !keys(%yes) || $yes{$ns}
1041 5 0 0 $max eq 'unbounded' || $max > 1
1093 0 6 0 $d->{'XSI_TYPE'} ||= $alt
1102 3 1 7 $before or $replace
4 7 0 $before or $replace or $after
1199 19 0 0 $self->prefixed($type) || $type