Branch Coverage

blib/lib/Config/Merge.pm
Criterion Covered Total %
branch 124 140 88.5


line true false branch
389 0 7 ref $_[0] eq 'HASH' ? :
27 7 @_ > 1 ? :
395 1 33 $$params{'debug'} ? :
397 0 34 if exists $$params{'sort'} and ref $$params{'sort'} ne 'CODE'
404 1 30 unless my $path = $$params{'path'}
408 29 1 if ($path and -d $path and -r _) { }
468 6 90 unless defined $path
473 0 96 if (@_) { }
483 16 80 if (exists $$self{'_memo'}{$path}) { }
498 2 91 wantarray && ref $config eq 'ARRAY' ? :
0 93 wantarray && ref $config eq 'HASH' ? :
509 0 244 unless defined $key and length $key
510 11 233 if (ref $config eq 'ARRAY' and $key =~ /^[0-9]+/ and exists $$config[$key]) { }
230 3 elsif (ref $config eq 'HASH' and exists $$config{$key}) { }
592 1 31 unless my $loader = shift()
594 1 30 unless eval "require $loader"
596 0 30 @_ ? :
653 129 44 if (-f $config_file) { }
44 0 elsif (-d $config_file) { }
657 0 129 unless ($name, my $ext) = $filename =~ /(.+)[.]([^.]+)/
661 0 129 unless $loader = $Module_For_Ext{lc $ext}
676 22 151 if (not $loading_local and &$is_local($self, $name))
684 16 134 unless defined $name
687 98 36 $loader ? :
694 0 133 unless defined $data
697 10 123 if (exists $$config{$name} and ref $$config{$name} eq 'HASH' and ref $data eq 'HASH') { }
715 1 21 unless defined $name
717 21 0 $loader ? :
722 0 21 unless defined $data
724 3 18 $name ? :
731 61 1 keys %$config ? :
741 5 168 unless (defined $name)
746 1 167 if not $loading_local and $name eq ''
750 153 14 length $curr_key_path ? :
753 12 155 if ($$self{'skip'}($self, $curr_key_path))
764 241 192 if length $key_path
777 0 118 @data > 1 ? :
782 1 118 if ($@)
880 3 3 unless defined $class
882 1 2 unless (defined $dir)
886 1 2 if ($class eq 'Config::Merge')
900 2 0 unless (exists $INC{$inc_path})
905 0 2 @_ % 2 ? :
911 5 20 ref $_[0] ? :
913 1 1 ref $_[0] ? :
937 50 27 if (ref $$local{$key} eq 'HASH' and exists $$config{$key})
940 37 13 if (ref $$config{$key} eq 'HASH')
946 9 4 if (ref $$config{$key} eq 'ARRAY' and exists $$local{$key}{'!'} and ref $$local{$key}{'!'} eq 'HASH')
1077 0 3 unless defined $index
1078 1 2 unless $index =~ /^\d+$/
1088 1 7 unless ref $remove eq 'ARRAY'
1092 1 14 unless $delete_index =~ /^\d+/
1093 12 2 if $delete_index < @$dest
1101 3 4 if (ref $add eq 'ARRAY') { }
3 1 elsif (ref $add eq 'HASH') { }
1102 2 1 if (@$add)
1112 1 8 unless $add_index =~ /^\d+/
1113 6 2 exists $actions{$add_index} || $add_index >= @$dest ? :
1128 10 8 if ($action eq '-')
1133 6 2 if ($action eq '~')
1312 18 98 $local ? :
1412 31 870 if $$self{'debug'}
1423 113 19 unless ($check)
1429 8 11 unless exists $callbacks{ref $check}
1448 1 2 if $callback eq 'load_as'
1461 4 6 if ($callback eq 'load_as')
1462 1 3 unless @$check == 1
1468 6 31 $filename =~ /$regex/ ? :
1476 1 6 unless ref $value eq 'Regexp'
1483 13 24 if $value =~ /$regex/