Condition Coverage

lib/Web/DataService/Node.pm
Criterion Covered Total %
condition 20 135 14.8


and 3 conditions

line !l l&&!r l&&r condition
113 0 0 2 defined $item->{'path'} and $item->{'path'} ne ''
116 1 1 0 $item->{'path'} ne '/' and $item->{'path'} =~ qr" ^ / | / $ | // | [?#] "sx
270 0 0 0 $place > 0 and defined $list
0 0 0 $place > 0 and defined $list and $list ne ''
290 2 0 0 $role and not $Web::DataService::ONE_REQUEST
344 2 0 0 $method and $attr_count > 1
360 0 0 2 ref $allow_format and &reftype($allow_format) eq 'HASH'
377 0 0 2 ref $allow_vocab and &reftype($allow_vocab) eq 'HASH'
392 2 0 0 defined $place and not $place =~ qr/^[0-9]+$/
429 0 0 0 defined $item->{'path'} and $item->{'path'} ne ''
432 0 0 0 $item->{'path'} ne '/' and $item->{'path'} =~ qr" ^ / | / $ | // | [?#] "sx
471 0 0 0 defined $place and $place =~ qr/^[0-9]+$/
474 0 0 0 defined $list and $list ne ''
513 0 0 0 defined $item->{'path'} and $item->{'path'} ne ''
0 0 0 defined $item->{'type'} and $item->{'type'} ne ''
516 0 0 0 $item->{'path'} ne '/' and $item->{'path'} =~ qr" ^ / | / $ | // | [?#] "sx
659 0 0 0 $ds->{'node_attrs'}{$path} && !$ds->{'node_attrs'}{$path}{'disabled'}
676 19 0 0 ref $path and &reftype($path) eq 'HASH'
700 0 0 17 $key and defined $NODE_DEF{$key}
701 0 0 17 defined $path and $path ne ''
824 0 0 0 defined $1 and $1 eq '-'
846 0 0 1 defined $v and $v ne ''
854 0 0 0 ref $inherited_value eq 'ARRAY' and @$inherited_value
952 3 0 0 $node->{'doc_string'} ne '' and $doc ne ''

or 2 conditions

line l !l condition
546 0 0 $item->{'disp'} || ''
547 0 0 $item->{'type'} || 'node'
575 0 0 $ds->{'extdoc_node'}{$path} ||= {'path', $path, 'disp', 'para', 'type', 'node'}
588 0 0 $ds->{'extdoc_format'}{$name} ||= {'name', $name, 'disp', 'para', 'type', 'format'}
601 0 0 $ds->{'extdoc_vocab'}{$name} ||= {'name', $name, 'disp', $disp, 'type', 'vocab'}
678 0 0 $path->{'node_path'} || '/'
726 24 0 $ds->{'attr_cache'}{$path} //= {}
818 0 0 $ds->{'node_attrs'}{$path}{$key} // ''
842 1 0 $ds->{'node_attrs'}{$path}{$key} // ''

or 3 conditions

line l !l&&r !l&&!r condition
183 0 0 6 not defined $value or $value eq ''
206 0 0 0 ref $v eq 'CODE' or not ref $v
213 0 0 0 ref $value eq 'CODE' or not ref $value
229 0 0 0 $value =~ qr/ ^ (?> [\w.:][\w.:-]* | \s*,\s* )* $ /sx or $value =~ qr/ ^ (?> [+-][\w.:][\w.:-]* | \s*,\s* )* $ /sx
267 0 0 0 $node_attrs->{'list'} // $ds->path_parent($path)
513 0 0 0 defined $item->{'path'} and $item->{'path'} ne '' or defined $item->{'type'} and $item->{'type'} ne ''
549 0 0 0 $path || $item->{'name'}
561 0 0 0 $disp eq '' or $disp eq 'replace'
0 0 0 $disp eq '' or $disp eq 'replace' or $disp eq 'add'
0 0 0 $disp eq '' or $disp eq 'replace' or $disp eq 'add' or $disp eq 'para'
614 0 0 0 $type eq 'node' or $type eq 'format'
0 0 0 $type eq 'node' or $type eq 'format' or $type eq 'vocab'
628 0 0 0 $item->{'path'} || $item->{'name'}
742 19 0 2 not exists $ds->{'node_attrs'}{$path}{$key} or $ds->{'path_compose'}{$path}{$key}
897 1 0 1 $path eq '/' or $path eq ''