Branch Coverage

blib/lib/Config/Natural.pm
Criterion Covered Total %
branch 118 164 71.9


line true false branch
47 4 24 if (ref $_[0] eq 'HASH')
50 1 9 if exists $options{$option}
52 2 8 if $option eq 'filter'
53 0 10 if $option eq 'prefilter'
56 7 21 if @_
71 0 209 unless exists $options{$name} or defined $$self{'options'}{$name}
84 0 467 if @_
0 184 if @_
0 219 if @_
0 111 if @_
0 138 if @_
1 313 if @_
0 203 if @_
0 197 if @_
1 129 if @_
0 121 if @_
0 240 if @_
108 0 0 unless exists $options{$arg} or $options{'quiet'}
114 0 15 unless exists $options{$arg} or $options{'quiet'}
119 0 15 wantarray ? :
133 0 20 if -f $dir
135 0 20 unless opendir DIR, $dir
137 18 2 unless $self->read_hidden_files
143 10 71 if (-d $path) { }
163 10 110 if (-d $file)
169 0 110 unless my $fh = _file_or_handle($file)
189 20 727 if $$self{'prefilter'}
191 86 661 if /^\s*$/
192 16 645 if /^\s*$comment/
196 20 625 if (/^\s*\Q$include\E\s+(\S+)\s*$/)
206 99 526 if (/^\s*(\S+)\s*\Q$list\E\s*$/)
213 99 427 if (/^\s*\Q$list_end\E\s*$/)
218 68 31 if (@$lists_stacks) { }
232 274 153 ${$$state{'lists_names'};}[-1] ? :
236 17 410 if ($value =~ /^\s*\Q$multiline\E\s*$/)
238 0 17 if $append
241 0 17 if $self->strip_indentation
244 0 52 if $indent
247 3 49 if eof $fh
252 25 402 if ($value =~ /^\s*\Q$array\E\s*$/)
260 2 101 if eof $fh
264 1 24 $append ? :
270 0 402 if ($self->auto_create_surrounding_list)
275 0 0 if ($curlistref)
280 0 0 if (exists $$root_param{$field} and not exists $$root_param{$surrlist})
286 0 0 if (exists $$root_param{$surrlist})
293 6 396 if $append
305 106 6 unless (ref $file)
320 9 753 unless @_
328 0 3 unless exists $$self{'param'}{_case_($self, $arg)} or $options{'quiet'}
339 274 479 if ($current_list) { }
351 92 541 if $$self{'filter'}
354 5 628 if $$self{'handlers'}{$arg}
360 5 748 wantarray ? :
372 1250 29 $self->case_sensitive ? :
383 622 161 if (my $ref_type = ref $arg) { }
386 622 0 if ($ref_type eq 'HASH') { }
389 626 0 if $_
393 0 0 unless $options{'quiet'}
399 22 139 if (substr($arg, 0, 1) eq '-') { }
402 0 0 unless defined $val or $options{'quiet'}
404 22 0 if $arg
425 0 1 unless ref $code eq 'CODE'
438 0 3 unless ref $code eq 'CODE'
527 1 23 if $$self{'param'}{$param_path}
531 23 0 unless $path[0]
535 1 22 if $index eq '*'
537 22 0 if (ref $node)
542 18 22 if ref $node and $index ne '*'
559 0 0 unless exists $$self{'param'}{_case_($self, $param)} or $options{'quiet'}
621 0 50 $state{'nospace'} ? :
623 32 18 if (ref $tree eq 'HASH') { }
18 0 elsif (ref $tree eq 'ARRAY') { }
626 27 5 if $state{'list_name'}
632 18 90 if (ref $$tree{$param}) { }
637 3 87 if $$tree{$param} =~ /\n|\r/
639 3 87 $multiline ? :
3 87 $multiline ? :
650 27 5 if $state{'list_name'}
655 12 6 if (ref $$tree[0]) { }
683 0 2 unless @_
687 0 2 unless print $fh $self->dump_param(@_)