Branch Coverage

lib/ExtUtils/MakeMaker.pm
Criterion Covered Total %
branch 230 352 65.3


line true false branch
69 0 157 if @_ % 2
141 11 307 if (exists $att->{'AUTHOR'})
142 11 0 if ($att->{'AUTHOR'}) { }
143 3 8 if (not ref $att->{'AUTHOR'})
159 2 432 unless (defined $sig)
164 16 416 ref $sig ? :
166 5 427 unless (grep {_is_of_type($val, $_);} @sigs)
181 430 28 if ref $thing eq $type
184 1 27 if eval {
193 6 3 uc $given eq $given ? :
4 9 $given eq '' ? :
202 1 4 unless defined $mess
207 2 2 defined $def ? :
208 2 2 defined $def ? :
215 3 1 if ($ENV{'PERL_MM_USE_DEFAULT'} or not $isa_tty and eof STDIN) { }
220 1 0 if (defined $ans) { }
228 3 1 !defined($ans) || $ans eq '' ? :
246 1 58 if $@
249 1 58 if $@
254 0 59 unless chdir $dir
260 1 58 if ($@)
402 52 0 if "$]" >= "5.006"
409 0 1196 if $Verbose >= 2
440 160 0 if defined $self and $self
447 0 160 unless defined $self
457 584 56 if (_has_cpan_meta_requirements()) { }
464 1 2 if ($_[0] =~ /^[-+]?[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)?$/) { }
467 2 0 $_[0] ? :
481 2 12 if (not defined $version && length $version) { }
3 9 elsif ($version =~ /^\d+(?:\.\d+(?:_\d+)*)?$/) { }
488 1 8 if ($version =~ /^[-+]?[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)?$/) { }
491 8 0 $version ? :
501 0 160 if (join($", @ARGV) =~ /\bPREREQ_PRINT\b/)
506 0 160 if (join($", @ARGV) =~ /\bPRINT_PREREQ\b/)
510 0 160 if $Verbose
511 0 0 if (-f "MANIFEST" and not -f "Makefile" and not $UNDER_CORE)
517 7 153 if ($self->{'MIN_PERL_VERSION'})
519 0 7 if (ref $perl_version) { }
530 6 1 if defined $perl_version
534 1 6 if (not defined $perl_version) { }
2 4 elsif ($perl_version > "$]") { }
545 1 1 if ($self->{'PREREQ_FATAL'}) { }
562 144 14 if (_has_cpan_meta_requirements()) { }
565 576 0 if $key2cmr{$key}
572 0 56 unless my $module2version = $self->{$key}
582 0 42 if ($prereq eq 'perl') { }
583 0 0 if (defined $required_version and $required_version =~ /^v?[\d_\.]+$/ or not $required_version =~ /^v?[\d_\.]+$/)
587 0 0 if defined $normal
594 5 37 if $installed_file
595 0 42 if $pr_version eq "undef"
596 0 42 unless (eval {
599 0 0 if ($pr_version =~ /^[-+]?[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)?$/) { }
602 0 0 $pr_version ? :
613 5 0 $cmr ? :
37 5 if (not $installed_file) { }
3 2 elsif ($cmr ? !$cmr->accepts_module($prereq, $pr_version) : $required_version > $pr_version) { }
617 34 0 unless $self->{'PREREQ_FATAL'} or $UNDER_CORE
629 2 0 unless $self->{'PREREQ_FATAL'} or $UNDER_CORE
635 2 35 if (%unsatisfied and $self->{'PREREQ_FATAL'})
646 1 155 if (defined $self->{'CONFIGURE'})
647 1 0 if (ref $self->{'CONFIGURE'} eq 'CODE') { }
659 0 156 if $Verbose >= 2
669 57 99 if (defined $Parent[-2]) { }
672 57 513 unless defined $self->{'PARENT'}{$key}
676 0 513 if defined $self->{'ARGS'}{$key} and $self->{'ARGS'}{$key} eq $self->{$key}
680 0 513 if ($Is_VMS and $key =~ /PERL$/) { }
687 0 0 unless @cmd < 2 or $self->file_name_is_absolute($cmd[1])
693 0 513 if $key =~ /PERL$/ and $self->is_make_type("dmake")
694 114 399 if $key =~ /PERL$/
695 399 114 unless $self->file_name_is_absolute($value)
697 114 399 if $key =~ /PERL$/
701 57 0 if ($self->{'PARENT'})
705 571 170 if (exists $self->{'PARENT'}{$opt} and not exists $self->{$opt})
714 0 57 if @fm
721 1 34 if (%unsatisfied and $self->{'PREREQ_FATAL'})
735 0 155 unless $self->{'NAME'} =~ /^[A-Z_a-z][0-9A-Z_a-z]*(?:::[0-9A-Z_a-z]+)*$/
765 154 0 if $CAN_DECODE
785 1 153 if (defined $self->{'CONFIGURE'})
790 1 0 if (scalar keys %configure_att > 0) { }
792 0 1 if $key eq "ARGS"
807 154 0 unless $self->{'SKIP'}
812 57 97 if ($self->{'PARENT'})
820 152 2 unless ($self->{'NORECURS'})
821 57 95 if @{$self->{'DIR'};}
827 1224 7347 unless $self->can($method)
829 0 8571 if $Verbose >= 2
831 399 8172 if ($skipit) { }
834 8171 1 unless $self->{$section}
836 0 8172 if $Verbose and %a
849 1 1 if @_ % 2
852 1 0 unless $att{'DIR'}
857 0 1 if (-f $old)
858 0 0 unless _unlink($old)
860 0 1 if (-f $new)
861 0 0 unless _rename($new, $old)
863 0 1 unless open my $mfh, ">", $new
888 0 1 unless close $mfh
917 7 570 if (-r $tmp)
937 154 1010 if $key eq "ARGS"
939 158 852 if ($key eq 'PREREQ_PM') { }
943 0 158 unless $att->{'PREREQ_PM'}
944 2 156 unless $att->{'BUILD_REQUIRES'}
945 4 154 unless $att->{'TEST_REQUIRES'}
967 0 99 if @words and not defined $words[-1]
968 0 99 unless @words or not length $line
984 0 8 unless $line =~ s/^
1007 3 5 $1 ? :
1010 0 5 unless defined $quote or length $unquoted or length $delim
1012 0 8 if ($keep) { }
1017 3 5 if (defined $quote)
1018 3 0 if $quote eq "\""
1023 3 5 defined $quote ? :
1025 1 7 if (length $delim)
1027 0 1 if $keep eq "delimiters"
1030 3 5 unless (length $line)
1043 0 0 if (@missed) { }
1055 99 0 if $CAN_DECODE
1057 0 5 unless (/(.*?)=(.*)/)
1058 0 0 if /^verb/
1062 0 5 if ($value =~ /^~(\w+)?/)
1063 0 0 $1 ? :
1074 0 99 if (defined $self->{'potential_libs'})
1076 0 0 if ($self->{'potential_libs'}) { }
1085 0 99 if (defined $self->{'ARMAYBE'})
1089 0 0 unless $self->{'dynamic_lib'}
1093 0 99 if (defined $self->{'LDTARGET'})
1099 0 99 if (defined $self->{'DIR'} and ref \$self->{'DIR'} eq "SCALAR")
1106 0 99 if (defined $self->{'INCLUDE_EXT'} and ref \$self->{'INCLUDE_EXT'} eq "SCALAR")
1110 0 99 if (defined $self->{'EXCLUDE_EXT'} and ref \$self->{'EXCLUDE_EXT'} eq "SCALAR")
1115 99 618 if $mmkey eq "ARGS"
1116 0 618 if $Verbose
1118 2 616 unless exists $Recognized_Att_Keys{$mmkey}
1120 0 99 if $Verbose
1131 160 2 unless -d $hint_dir
1137 0 2 unless $hint
1141 2 6 if -f "File::Spec"->catfile($hint_dir, "$hint.pl")
1143 0 6 unless $hint =~ s/_[^_]*$//
1147 0 2 unless -f $hint_file
1156 0 2 if $Verbose
1158 2 0 if (open my $fh, '<', $hint_file) { }
1162 1 1 if $@
1173 0 2 unless $_[0] =~ /^Subroutine .* redefined/
1176 11230 2 unless defined &{"${from}::$method";}
1198 0 153 if $section eq "metafile" and $UNDER_CORE
1199 153 8418 if ($section eq "dynamic")
1202 0 0 if $self->{'SKIPHASH'}{'dynamic_bs'} and $Verbose
1205 0 0 if $self->{'SKIPHASH'}{'dynamic_lib'} and $Verbose
1207 153 8418 if ($section eq "dynamic_lib")
1210 0 0 if $self->{'SKIPHASH'}{'dynamic_bs'} and $Verbose
1212 153 8418 if ($section eq "static")
1215 0 0 if $self->{'SKIPHASH'}{'static_lib'} and $Verbose
1217 399 8172 if $self->{'SKIPHASH'}{$section}
1224 0 150 unless open my $fh, ">", $file
1226 150 0 if $CAN_DECODE
1235 93 57 if $Verbose or not $self->{'PARENT'}
1236 93 57 if $Verbose or not $self->{'PARENT'}
1238 0 150 $Is_VMS ? :
1244 122 28 if not $self->{'NO_MYMETA'} and $self->write_mymeta($self->mymeta)
1247 0 150 if ($self->{'PARENT'} and not $self->{'_KEEP_AFTER_FLUSH'})
1253 0 150 if $Config::Config{'eunicefix'} ne ":"
1261 0 150 unless ref $contents
1264 0 17826 if not $CAN_DECODE and "$]" > "5.008"
1265 0 17826 unless print $fh "$to_write\n"
1267 0 150 unless close $fh
1268 0 150 unless _rename("MakeMaker.tmp", $finalname)
1270 150 0 unless $Is_VMS
1311 8 1211 unless defined $v
1313 415 796 unless $t
1314 163 633 if ($t eq "ARRAY")
1324 5 628 unless $t eq "HASH"
1327 0 54 unless defined $key
1335 0 0 if $UNDER_CORE
1339 0 0 ref $sv eq 'B::PVMG' ? :
1341 0 0 if ($magic->TYPE eq 'V') { }
1356 0 153 if ($Verbose)
1359 0 0 if $key eq "RESULT" or $key =~ /^[A-Z][a-z]/