Branch Coverage

blib/lib/Module/ScanDeps.pm
Criterion Covered Total %
branch 214 286 74.8


line true false branch
611 34 123 if ($path =~ /\.pm$/io) { }
612 0 34 unless -f $path
614 0 34 unless defined $module_info
616 34 0 if (defined $inc_name) { }
620 0 0 if $warn
632 30 10 @_ && $_[0] =~ /^(?:$Keys)$/o ? :
637 39 1 unless (defined $args{'keys'})
642 8 32 if ($cache_file)
645 8 0 if ($using_cache) { }
657 1 56 unless ($input_file =~ /$Module::ScanDeps::ScanFileRE/)
660 0 1 if $args{'warn_missing'}
666 11 45 if ($type eq 'module') { }
728 0 40 if ($args{'execute'} or $args{'compile'})
738 8 32 if ($using_cache)
758 35 5 unless $skip
762 2604 699 if $_skip->{$file}++
765 6 693 unless $file =~ /$Module::ScanDeps::ScanFileRE/
769 51 642 if ($cache_cb) { }
777 20 31 unless ($found_in_cache)
798 2291 84 unless my(@preload) = _get_preload($pm)
813 5 120 if $rv->{'utf8.pm'}
817 3531 0 if defined $_->{'file'}
827 30 55 if $count == keys %$rv
836 18 0 @_ && $_[0] =~ /^(?:$Keys)$/o ? :
843 18 0 ref $files ? :
845 5 13 if ($compile) { }
13 0 elsif ($execute) { }
847 0 5 unless $file =~ /$Module::ScanDeps::ScanFileRE/
854 6 7 unless ref $execute
866 0 662 unless open my $fh, "<", $file
874 353 3340 if $pm eq "__END__"
876 217 3123 if ($pm eq "__POD__")
878 215 17619 if $line =~ /^=cut/
884 0 3125 if ($pm =~ /^Tk\b/)
885 0 0 if $file =~ /(?:^|$pathsep)Term${pathsep}ReadLine\.pm$/
886 0 0 if $file =~ /(?:^|$pathsep)Tcl${pathsep}Tk\W/
893 0 662 unless close $fh
901 353 175470 if $line =~ /^__(?:END|DATA)__$/
902 217 175253 if $line =~ /^=\w/
913 671 130673 if (/^package\s+(\w+)/)
919 112 130561 if (/^(?:use|require)\s+v?(\d[\d\._]*)/)
921 19 93 if ("version"->new($1) >= "version"->new("5.9.5"))
928 14 130547 if (my($pragma, $args) = /^(?:use|no) \s+ (autouse|if) \s+ (.+)/x)
935 5 9 if ($pragma eq 'autouse') { }
946 14 0 if $module
950 6 130541 if (my($how, $libs) = /^(use \s+ lib \s+ | (?:unshift|push) \s+ \@INC \s*,\s*) (.+)/x)
952 6 0 defined $Module::ScanDeps::Config{'archname'} ? :
953 6 0 defined $Module::ScanDeps::Config{'version'} ? :
956 0 4 unless defined $dir
958 4 0 if $how =~ /lib/
961 4 12 if -d $_
987 3890 72 if length $_
1001 5 29 if $_ eq ""
1003 9 20 if (s/^(['"]) ((?:\\.|.)*?) \1//x)
1006 12 8 if (s/^qq? \s* (\W)//x)
1013 6 2 if (s/^qw \s* (\W)//x)
1019 0 6 unless @list
1021 4 2 @list ? :
1026 0 2 if (s/^.*? ,//x)
1063 94 130460 if (my($loader, $list) = $_ =~ /$LoaderRE/sx)
1066 2 92 if ($loader eq "Catalyst")
1070 1 1 $1 eq '-' ? :
2 3 $list =~ /([+-])\Q$_\E(?:$|[^\w:])/ ? :
1081 0 130460 if (/^use \s+ Class::Autouse \b \s* (.*)/sx or /^Class::Autouse \s* -> \s* autouse \s* (.*)/sx)
1087 1996 128464 if (s/^(?:use|no) \s+//x)
1092 825 127639 if (s/^(require|do) [\s(]+//x)
1093 732 93 $1 eq 'require' && /^([\w:]+)/ ? :
1098 903 126736 if (/(<[^>]*[^\$\w>][^>]*>)/)
1100 63 840 if $diamond =~ /[*?\[\]{}~\\]/
1103 0 127576 if /\bdbi:(\w+):/i
1106 2 127574 if (s/^(with|extends)\s+//)
1113 222 127352 if (my($args) = /\b(?:open|binmode)\b(.*)/)
1115 3 219 if $args =~ /:encoding\((.*?)\)/
1119 3 9 if $1 eq "encoding"
1121 9 213 if @mods
1122 9 213 if @mods
1124 10 127555 if (/\b(?:en|de)code\(\s*['"]?([-\w]+)/)
1128 0 127555 if ($SeenTk)
1137 0 0 if (/->\s*setPalette/g)
1149 0 127555 if s/^(?:require_module|use_module|use_package_optimistically) \s* \( \s*//x
1152 2 127553 if s/^(?:require_ok|use_ok) \s* \( \s*//x
1159 127553 3001 unless defined $module
1160 115 0 wantarray ? :
115 2886 if ref $module
1163 35 2851 if ($module =~ /^(['"]) (.*?) \1/x) { }
0 2851 elsif ($module =~ s/^qq? \s* (\W)//x) { }
1172 1 2885 if $module =~ /^(?:[\d\._]+|'.*[^']|".*[^"])$/
1174 58 2827 unless $module =~ /\./
1180 0 16 unless $] >= "5.008" and eval { do { require Encode; %Encode::ExtModule } }
1182 16 0 unless my $mod = eval { do { $Encode::ExtModule{&Encode::find_encoding($enc)->name} } }
1190 0 3541 unless defined $module and defined $file
1227 3467 74 if (defined $used_by and $used_by ne $module)
1239 3385 82 unless &any(sub { $_ eq $used_by; } , @{$$rv{$module}{"used_by"};})
1242 3385 82 if not &any(sub { $_ eq $module; } , @{$$rv{$used_by}{"uses"};})
1249 0 0 ref $_[0] ? :
2470 0 @_ && $_[0] =~ /^(?:modules|rv|used_by|warn_missing)$/ ? :
1260 121 3361 unless my $file = _find_in_inc($module)
1261 1 3360 if $skip->{$file}
1263 2813 547 if (exists $rv->{$module})
1274 531 16 if ((my $path = $module) =~ s/\.p[mh]$//i)
1277 76 159 if $_->{'name'} =~ m[^auto/$path/.*/]
1278 23 136 if $_->{'name'} =~ m[/(?:\.exists|\.packlist)$|\Q$Module::ScanDeps::Config{'lib_ext'}\E$]
1310 5106 15 if $inc eq $_cached_inc
1320 0 3482 unless defined $file
1324 2843 639 if $cached_val
1327 518 4054 if (-f "$dir/$file")
1334 0 121 if -f $file
1348 137 1502 if $cached_val
1353 13423 114 unless -d $dir
1360 193 331 unless -f $_
1361 0 331 if $pm_only and not /\.p[mh]$/i
1364 97 234 $pm_only ? :
1388 0 0 unless -d $dir
1390 0 0 unless opendir my $dh, $dir
1395 0 0 $pm_only ? :
1429 0 0 unless $module =~ /\.p[mh]$/i
1431 0 0 unless my $file = _find_in_inc($module)
1465 1 154 if ($cache{$val->{'key'}}) { }
1466 1 0 unless defined $val->{'used_by'}
1482 1 3 if $type eq "main"
1485 3 0 if (UNIVERSAL::isa($info->{$type}, "HASH"))
1493 1 2 if $type eq "module"
1505 0 0 if $Preload{$pm}
1534 13 5 $execute ? :
1626 0 18 unless open my $fh, "<", $file
1636 13 5 $execute ? :
13 5 $execute ? :
1640 0 0 $execute ? :
0 18 unless $rc == 0
1645 0 18 unless my $info = do $data_file
1701 85 2136 if $name =~ /\.(?:ix|al|bs)$/i
1702 1982 154 if $name =~ /\.p[mh]$/i
1703 55 99 if $name =~ /\.\Q$Module::ScanDeps::Config{'dlext'}\E$/i
1714 0 1697 if ($rv->{$key} and _not_dup($key, $rv, $rv_sub)) { }
0 1697 elsif ($rv->{$key}) { }
1759 0 0 if $SeenRuntimeLoader{$module}++
1769 121 0 unless $warn
1770 0 0 unless $module =~ /\.p[ml]$/
1771 0 0 if not -f $module
1777 3380 97 unless my $preload = $Preload{$pm}
1778 10 87 if ($preload eq 'sub') { }
46 41 elsif (UNIVERSAL::isa($preload, 'CODE')) { }
1796 4 1101 if $seen->{$pm}