Branch Coverage

blib/lib/PRANG/Graph/Meta/Class.pm
Criterion Covered Total %
branch 81 98 82.6


line true false branch
83 12 29 if (@nodes != 1) { }
29 0 elsif (@nodes) { }
94 1052 308 if (not defined $_[0]) { }
98 153 155 if ((ref $_[0] || '') ne "ARRAY")
106 51 56 if (ref $_[0] eq 'ARRAY') { }
115 0 211 if (ref $_[0] eq 'ARRAY') { }
138 74 26 unless (defined $prefix)
141 0 100 if (length $prefix and not exists $context->xsi->{$prefix})
144 26 74 if length $prefix
150 0 34 unless $xmlns_att_name = $meta_att->xmlns_attr
158 57 43 if ($meta_att) { }
6 37 elsif ($meta_att = $attributes->{'*'}{$attr->localname}) { }
6 31 elsif ($meta_att = $attributes->{$xmlns}{'*'}) { }
28 3 elsif ($meta_att = $attributes->{'*'}{'*'}) { }
0 3 elsif ($xmlns =~ m[^\w+://\w+\.w3\.org/.*schema]i and $attr->localname =~ /schema/i) { }
164 56 1 if (my $tc = $meta_att->type_constraint and not $meta_att->xml_isa)
167 2 54 unless ($tc->check($attr->value))
219 2 1 unless $lax
249 0 410 if $input_node->nodeType == 8
252 5 378 unless ($key)
253 3 2 if $lax
262 4 374 unless ($meta_att->_item_tc->check($value))
274 135 239 if (defined $name)
280 354 20 if (defined $xmlns)
288 6 233 unless ($graph->complete($context))
299 532 273 unless exists $init_args{$key}
301 202 71 if ($element->has_xml_max and $element->xml_max == 1) { }
309 273 0 if (my $t_c = $element->type_constraint)
310 0 273 unless ($t_c->check($val))
311 0 0 if (ref $val)
331 23 250 $element->has_xml_nodeName_attr && exists $init_arg_names{$key} ? :
22 251 $element->has_xmlns_attr && exists $init_arg_xmlns{$key} ? :
337 0 273 unless (push @rv, eval {
340 0 0 if (ref $bad eq 'ARRAY') { }
354 0 233 if (my(@leftovers) = keys %init_args)
377 28 231 if (@ns_attr)
400 0 227 if (not $value) { }
431 48 49 if ($meta_att->has_xml_required) { }
47 2 elsif (not $meta_att->is_required) { }
445 43 54 if ($meta_att->has_xml_name)
449 24 73 if ($meta_att->has_xmlns_attr)
453 43 54 unless (defined $value)
454 0 43 unless $is_optional
463 14 54 if ($xmlns) { }
467 14 0 if (length $prefix)
492 11 43 if (ref $value eq 'HASH') { }
1 42 elsif (ref $value eq 'ARRAY') { }
497 12 3 if ($xmlns)
502 4 11 if (ref $val eq 'ARRAY') { }