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
1158 0 2 if $Verbose
1164 1 1 if (not defined $ret)
1174 0 2 unless $_[0] =~ /^Subroutine .* redefined/
1177 11230 2 unless defined &{"${from}::$method";}
1199 0 153 if $section eq "metafile" and $UNDER_CORE
1200 153 8418 if ($section eq "dynamic")
1203 0 0 if $self->{'SKIPHASH'}{'dynamic_bs'} and $Verbose
1206 0 0 if $self->{'SKIPHASH'}{'dynamic_lib'} and $Verbose
1208 153 8418 if ($section eq "dynamic_lib")
1211 0 0 if $self->{'SKIPHASH'}{'dynamic_bs'} and $Verbose
1213 153 8418 if ($section eq "static")
1216 0 0 if $self->{'SKIPHASH'}{'static_lib'} and $Verbose
1218 399 8172 if $self->{'SKIPHASH'}{$section}
1225 0 150 unless open my $fh, ">", $file
1227 150 0 if $CAN_DECODE
1236 93 57 if $Verbose or not $self->{'PARENT'}
1237 93 57 if $Verbose or not $self->{'PARENT'}
1239 0 150 $Is_VMS ? :
1245 122 28 if not $self->{'NO_MYMETA'} and $self->write_mymeta($self->mymeta)
1248 0 150 if ($self->{'PARENT'} and not $self->{'_KEEP_AFTER_FLUSH'})
1254 0 150 if $Config::Config{'eunicefix'} ne ":"
1262 0 150 unless ref $contents
1265 0 17826 unless defined $to_write
1266 0 17826 if not $CAN_DECODE and "$]" > "5.008"
1267 0 17826 unless print $fh "$to_write\n"
1269 0 150 unless close $fh
1270 0 150 unless _rename("MakeMaker.tmp", $finalname)
1272 150 0 unless $Is_VMS
1313 8 1211 unless defined $v
1315 415 796 unless $t
1316 163 633 if ($t eq "ARRAY")
1326 5 628 unless $t eq "HASH"
1329 0 54 unless defined $key
1337 0 0 if $UNDER_CORE
1341 0 0 ref $sv eq 'B::PVMG' ? :
1343 0 0 if ($magic->TYPE eq 'V') { }
1358 0 153 if ($Verbose)
1361 0 0 if $key eq "RESULT" or $key =~ /^[A-Z][a-z]/