Condition Coverage

blib/lib/CPAN/Distribution.pm
Criterion Covered Total %
condition 11 604 1.8


and 2 conditions

line l !l condition
1436 0 0 $CPAN::Frontend->myprint(join("", map({" $_\n";} @e))) and return
3991 0 0 $CPAN::Frontend->myprint(join("", map({" $_\n";} @e))) and return
4567 0 0 $CPAN::Frontend->mywarn("Could not run 'which ${binary}': $!\n") and return

and 3 conditions

line !l l&&!r l&&r condition
190 0 0 0 $self->{'make_test'} && $self->{'build_dir'} && (UNIVERSAL::can($self->{'make_test'}, 'failed') ? !$self->{'make_test'}->failed : $self->{'make_test'} =~ /^YES/) && (!$self->{'install'} || $self->{'install'}->failed)
210 0 0 0 exists $self->{'incommandcolor'} and $color == 1
0 0 0 exists $self->{'incommandcolor'} and $color == 1 and $self->{'incommandcolor'} == $color
343 0 0 0 exists $self->{'build_dir'} and -d $self->{'build_dir'}
354 0 0 0 exists $self->{'build_dir'} and not -d $self->{'build_dir'}
364 0 0 0 exists $self->{'unwrapped'} and UNIVERSAL::can($self->{'unwrapped'}, "failed") ? $self->{'unwrapped'}->failed : $self->{'unwrapped'} =~ /^NO/
405 0 0 0 $self->{'build_dir'} and -d $self->{'build_dir'}
418 0 0 0 exists $self->{'writemakefile'} and ref $self->{'writemakefile'}
0 0 0 exists $self->{'writemakefile'} and ref $self->{'writemakefile'} and $self->{'writemakefile'}->can("failed")
0 0 0 exists $self->{'writemakefile'} and ref $self->{'writemakefile'} and $self->{'writemakefile'}->can("failed") and $self->{'writemakefile'}->failed
556 0 0 0 @readdir == 1 and -d $readdir[0]
586 0 0 0 $CPAN::META->has_usable('Errno') && defined &Errno::EEXIST
592 0 0 0 defined $eexist and $! != $eexist
674 0 0 0 $CPAN::DEBUG and $early_yaml
704 0 0 0 $@ and ref $@
0 0 0 $@ and ref $@ and $@->isa("CPAN::Exception::RecursiveDependency")
759 0 0 0 $@ and ref $@
0 0 0 $@ and ref $@ and $@->isa("CPAN::Exception::RecursiveDependency")
819 0 0 0 $self->{'build_dir'} and $CPAN::Config->{'build_dir_reuse'}
833 0 0 0 defined $dir and length $dir
900 0 0 0 $patchbin and length $patchbin
932 0 0 0 $patches_dir and not "File::Spec"->file_name_is_absolute($patch)
1006 0 0 0 $CPAN::Config->{'applypatch'} and /\#\#\#\# ApplyPatch data follows \#\#\#\#/
1105 0 0 0 @dirs and @files
1126 0 0 0 $state eq "poddir" and /^=head\d\s+(\S+)/
1191 0 0 0 $rv != Module::Signature::SIGNATURE_OK() and $rv != Module::Signature::SIGNATURE_MISSING()
1582 0 0 0 exists $cksum->{$basename} and not exists $cksum->{$basename}{'cpan_path'}
0 0 0 exists $cksum->{$basename} and substr($self->{'ID'}, 0, length $cksum->{$basename}{'cpan_path'}) ne $cksum->{$basename}{'cpan_path'}
1761 0 0 0 $method and $phase eq $method
1765 0 0 0 substr($self->id, -1, 1) eq "." and $att =~ /(unwrapped|build_dir|archived)/
1770 0 0 0 $att eq "build_dir" and $self->{'build_dir'}
0 0 0 $att eq "build_dir" and $self->{'build_dir'} and $CPAN::META->{'is_tested'}
1777 0 0 0 $att eq "make_test" and $self->{'make_test'}
0 0 0 $att eq "make_test" and $self->{'make_test'} and $self->{'make_test'}{'COMMANDID'}
0 0 0 $att eq "make_test" and $self->{'make_test'} and $self->{'make_test'}{'COMMANDID'} and $self->{'make_test'}{'COMMANDID'} == $CPAN::CurrentCommandId
1793 0 0 0 $method and $method =~ /make|test|install/
1822 0 0 0 $self->cpan_comment and $self->cpan_comment =~ /isa_perl\(.+?\)/
1879 0 0 0 not $self->{'force_update'} and exists $self->{'signature_verify'}
0 0 0 not $self->{'force_update'} and exists $self->{'signature_verify'} and UNIVERSAL::can($self->{'signature_verify'}, "failed") ? $self->{'signature_verify'}->failed : $self->{'signature_verify'} =~ /^NO/
1934 0 0 0 exists $ENV{'PERL_USE_UNSAFE_INC'} && defined $ENV{'PERL_USE_UNSAFE_INC'}
2024 0 0 0 $Config::Config{'d_alarm'} and $Config::Config{'d_alarm'} eq "define"
2085 0 0 0 not defined $ret and $self->{'writemakefile'}
0 0 0 not defined $ret and $self->{'writemakefile'} and $self->{'writemakefile'}->failed
2114 0 0 0 $^O eq "VMS" and -f 'descrip.mms' || -f 'Build.com'
2189 0 0 0 $self->called_for ne $self->id and not $self->{'force_update'}
2250 0 0 0 exists $ENV{'PERL_USE_UNSAFE_INC'} && defined $ENV{'PERL_USE_UNSAFE_INC'}
2306 0 0 0 $^O eq "VMS" and -f "Build.com"
2330 0 0 0 $expect_model and @{$expect_model->{'talk'};}
2509 0 0 0 $CPAN::META->has_inst("CPAN::Kwalify") and $CPAN::META->has_inst("Kwalify")
2622 0 0 0 exists $self->{'negative_prefs_cache'} and $self->{'negative_prefs_cache'} != $CPAN::CurrentCommandId
2667 0 0 0 $prefs and exists $prefs->{$phase}
0 0 0 $prefs and exists $prefs->{$phase} and exists $prefs->{$phase}{'args'}
0 0 0 $prefs and exists $prefs->{$phase} and exists $prefs->{$phase}{'args'} and $prefs->{$phase}{'args'}
2835 0 0 0 $optional and $self->is_locally_optional(undef, $prereq)
2951 0 0 0 -f "Build.PL" and not -f "File::Spec"->catfile($self->{'build_dir'}, "Makefile.PL")
0 0 0 -f "Build.PL" and not -f "File::Spec"->catfile($self->{'build_dir'}, "Makefile.PL") and not $merged->requirements_for_module("Module::Build")
0 0 0 -f "Build.PL" and not -f "File::Spec"->catfile($self->{'build_dir'}, "Makefile.PL") and not $merged->requirements_for_module("Module::Build") and not $CPAN::META->has_inst("Module::Build")
3044 0 0 0 $sufficient and !defined($need_version) || $need_version eq '0' || $need_version eq 'undef'
3071 0 0 0 $inst_file and $available_file eq $inst_file
0 0 0 $inst_file and $available_file eq $inst_file and $nmo->inst_deprecated
0 0 0 $self->{'reqtype'} and $self->{'reqtype'} =~ /^(r|c)$/
0 0 0 $self->{'reqtype'} and $self->{'reqtype'} =~ /^(r|c)$/ and exists $prereq_pm->{'requires'}{$need_module} || exists $prereq_pm->{'opt_requires'}{$need_module}
0 0 0 $self->{'reqtype'} and $self->{'reqtype'} =~ /^(r|c)$/ and exists $prereq_pm->{'requires'}{$need_module} || exists $prereq_pm->{'opt_requires'}{$need_module} and $nmo
0 0 0 $self->{'reqtype'} and $self->{'reqtype'} =~ /^(r|c)$/ and exists $prereq_pm->{'requires'}{$need_module} || exists $prereq_pm->{'opt_requires'}{$need_module} and $nmo and not $inst_file
3080 0 0 0 $fulfills_all_version_rqs and $nmo->id =~ /^CPANPLUS(?:::Dist::Build)$/
3101 0 0 0 $need_distro->{'install'} and $need_distro->{'install'}->failed
0 0 0 $need_distro->{'install'} and $need_distro->{'install'}->failed and $need_distro->{'install'}->text =~ /is only/
3174 0 0 0 $nosayer eq "make_test" and $do->{'make_test'}{'COMMANDID'} != $CPAN::CurrentCommandId
3312 28 0 0 $meta_file eq "META.yml" and $meta->generated_by =~ /ExtUtils::MakeMaker version ([\d\._]+)/
3335 0 0 0 defined $yaml and !ref($yaml) || ref $yaml ne 'HASH'
3341 0 0 0 $CPAN::DEBUG and $yaml
3347 0 0 0 defined $yaml->{'dynamic_config'} and not $yaml->{'dynamic_config'}
3389 0 0 8 $meta_obj and not $meta_obj->dynamic_config
3424 0 0 0 ref $req eq "HASH" and %$req
3426 0 0 0 $yaml->{'generated_by'} and $yaml->{'generated_by'} =~ /ExtUtils::MakeMaker version ([\d\._]+)/
3441 0 0 0 $k =~ /[A-Za-z]/ and $v =~ /[A-Za-z]/
0 0 0 $k =~ /[A-Za-z]/ and $v =~ /[A-Za-z]/ and $CPAN::META->exists("CPAN::Module", $v)
3471 0 0 0 -f $makefile and $fh = "FileHandle"->new("<$makefile\000")
3569 0 0 0 UNIVERSAL::can($self->{'make_test'}, "commandid") and $self->{'make_test'}->commandid == $CPAN::CurrentCommandId
3614 0 0 0 -f $makefile and $fh = "FileHandle"->new("<$makefile\000")
3701 0 0 0 exists $ENV{'PERL_USE_UNSAFE_INC'} && defined $ENV{'PERL_USE_UNSAFE_INC'}
3759 0 0 0 $CPAN::Config->{'trust_test_report_history'} and $CPAN::META->has_inst("CPAN::Reporter::History")
0 0 0 $CPAN::Config->{'trust_test_report_history'} and $CPAN::META->has_inst("CPAN::Reporter::History") and $have_tested_fcn = "CPAN::Reporter::History"->can("have_tested")
3794 0 0 0 $^O eq "VMS" and -e "Build.com"
3814 0 0 0 $expect_model and @{$expect_model->{'talk'};}
3921 0 0 0 $available_version and not "CPAN::Version"->vlt($available_version, $self->{'prereq_pm'}{$m})
0 0 0 $available_file and !$self->{'prereq_pm'}{$m} || $self->{'prereq_pm'}{$m} == 0
3981 0 0 0 exists $self->{'writemakefile'} and $self->{'writemakefile'}->failed
3989 0 0 0 exists $self->{'make_clean'} and $self->{'make_clean'} eq "YES"
4054 0 0 0 $self->prefs->{'disabled'} and not $self->{'force_update'}
4213 0 0 0 exists $CPAN::HandleConfig::keys{'mbuild_install_build_command'} && $CPAN::Config->{'mbuild_install_build_command'}
4263 0 0 0 exists $ENV{'PERL_USE_UNSAFE_INC'} && defined $ENV{'PERL_USE_UNSAFE_INC'}
4310 0 0 0 $CPAN::Config->{'cleanup_after_install'} and not $self->is_dot_dist
0 0 0 $CPAN::Config->{'cleanup_after_install'} and not $self->is_dot_dist and not $self->is_being_sponsored
4328 0 0 0 $makeout =~ /permission/s and $> > 0
0 0 0 $makeout =~ /permission/s and $> > 0 and !$mimc || $mimc eq 'CPAN::HandleConfig'->prefs_lookup($self, 'make')
4407 0 0 0 $allow_down eq "yes" and $allow_outdd eq "yes"
4410 0 0 0 $allow_outdd ne "yes" and not $CPAN::META->has_inst("CPAN::DistnameInfo")
4417 0 0 0 $allow_down eq "yes" and $allow_outdd eq "yes"
4481 0 0 0 @outdd and $allow_outdd ne "yes"
4572 0 0 0 $CPAN::DEBUG and $out
4810 0 0 0 $self->prefs->{'patches'} and @{$self->prefs->{'patches'};}
0 0 0 $self->prefs->{'patches'} and @{$self->prefs->{'patches'};} and $self->{'patched'}
4842 0 0 0 not $format and $CPAN::META->has_inst("JSON::PP")

or 2 conditions

line l !l condition
202 0 0 shift() || 0
203 0 0 shift() || 0
204 0 0 shift() || []
211 0 0 $CPAN::MAX_RECURSION ||= 0
275 0 0 $self->{'CONTAINSMODS'} ||= {}
394 0 0 $ENV{'PERLLIB'} || ''
658 0 0 $yaml || 'undef'
673 0 0 $early_yaml || 'UNDEF'
680 0 0 $early_yaml || undef
893 0 0 $patches ||= ""
1047 0 0 $self->called_for || 'unknown'
1327 0 0 $ENV{'CPAN_SHELL_LEVEL'} || 0
1333 0 0 $ENV{'PERLLIB'} || ''
1414 0 0 $CPAN::Config->{'pager'} || 'cat'
1434 0 0 $self->{'CHECKSUM_STATUS'} ||= ""
1527 0 0 $sloppy ||= 0
1902 0 0 $err ||= "Had some problem writing Makefile"
1930 0 0 $ENV{'PERLLIB'} || ''
1958 0 0 $ENV{'PERL_AUTOINSTALL'} || ''
1959 0 0 $ENV{'PERL_EXTUTILS_AUTOINSTALL'} || ''
1970 0 0 $ENV{'PERL_AUTOINSTALL'} ||= "--defaultdeps"
1971 0 0 $ENV{'PERL_EXTUTILS_AUTOINSTALL'} ||= "--defaultdeps"
1980 0 0 $ENV{'PERL5_CPAN_IS_EXECUTING'} || ''
2095 0 0 $@ || 'Unknown error'
2246 0 0 $ENV{'PERLLIB'} || ''
2394 0 0 $expect_model->{'mode'} ||= "deterministic"
2410 0 0 $expect_model->{'timeout'} || 5
2472 0 0 $expect_model->{'timeout'} || 15
2635 0 0 $prefs ||= ""
2718 0 0 'CPAN::HandleConfig'->prefs_lookup($self, 'make') || $Config::Config{'make'} || 'make'
2728 0 0 'CPAN::HandleConfig'->prefs_lookup($self, 'make') || $CPAN::Config->{'make'} || $Config::Config{'make'} || 'make'
2763 0 0 $opt || 0
2940 0 0 $self->prefs->{'depends'} || {}
2966 0 0 $self->prereq_pm || {}
3020 0 0 $nmo->inst_file || ''
3021 0 0 $nmo->available_file || ''
3118 0 0 $self->{'sponsored_mods'}{$need_module} ||= 0
3339 0 0 $yaml || 'UNDEF'
3384 0 0 $self->{'writemakefile'} || ''
0 0 $self->{'modulebuild'} || ''
3419 0 0 $yaml->{'requires'} || {}
3420 0 0 $yaml->{'build_requires'} || {}
3422 0 0 $yaml->{'recommends'} || {}
3525 0 0 $bphash->{'requires'} || {}
3526 0 0 $bphash->{'build_requires'} || {}
3549 0 0 $self->{'badtestcnt'} ||= 0
3605 0 0 $self->{'writemakefile'} || ''
0 0 $self->{'modulebuild'} || ''
3696 0 0 $ENV{'PERLLIB'} || ''
4231 0 0 $brip ||= "ask/yes"
4233 0 0 $self->{'reqtype'} ||= "c"
4258 0 0 $ENV{'PERLLIB'} || ''
4404 0 0 $allow_down ||= "ask/yes"
4406 0 0 $allow_outdd ||= "ask/yes"
4589 0 0 $CPAN::Config->{'lynx'} || undef
4656 0 0 $CPAN::Config->{'pager'} || 'cat'
4902 0 0 $rep->{'archname'} || $rep->{'platform'} || '????'
4903 0 0 $rep->{'action'} || $rep->{'status'} || '????'
4904 0 0 $rep->{'ostext'} || ucfirst $rep->{'osname'} || '????'

or 3 conditions

line l !l&&r !l&&!r condition
30 0 0 0 $instance{$plugin} ||= $plugin_proper->new(@args)
73 0 0 1 $s =~ tr[/][] == 1 or not $s =~ m[[A-Z]/[A-Z-0-9]{2}/[A-Z-0-9]{2,}/]
75 0 0 0 $CPAN::META->{'LOCK'} or $$CPAN::Have_warned{"$s is unlocked"}++
327 0 0 0 $self->{'CALLED_FOR'} || $self->pretty_id
425 0 0 0 $packagedir ||= $self->{'build_dir'}
497 0 0 0 $CPAN::META->{'cachemgr'} ||= "CPAN::CacheMgr"->new
578 0 0 0 not $userid or $userid eq "N/A"
592 0 0 0 defined $eexist and $! != $eexist or $suffix == 999
643 41 0 0 $has_cm or $has_pcm
645 41 0 0 $has_cm or $has_pcm
660 0 0 0 $yaml ||= "File::Spec"->catfile($build_dir, "META.yml")
675 0 0 0 not ref $early_yaml or ref $early_yaml ne "HASH"
1317 0 0 0 $dir ||= $self->dir
1363 0 0 0 $CPAN::Config->{'cvsroot'} || $ENV{'CVSROOT'}
1365 0 0 0 $CPAN::Config->{'cvs_site_perl'} || $ENV{'CVS_SITE_PERL'}
1582 0 0 0 not ref $cksum or ref $cksum ne "HASH"
1761 0 0 0 $fforce or $method and $phase eq $method
1787 0 0 0 $ldebug or $CPAN::DEBUG
1864 0 0 0 not $self->{'archived'} or $self->{'archived'} eq "NO"
1869 0 0 0 not $self->{'unwrapped'} or UNIVERSAL::can($self->{'unwrapped'}, "failed") ? $self->{'unwrapped'}->failed : $self->{'unwrapped'} =~ /^NO/
2094 0 0 0 not defined $output or $@
2114 0 0 0 -f "Makefile" or -f "Build"
0 0 0 -f 'descrip.mms' || -f 'Build.com'
0 0 0 -f "Makefile" or -f "Build" or $^O eq "VMS" and -f 'descrip.mms' || -f 'Build.com'
2306 0 0 0 -f "Build" or $^O eq "VMS" and -f "Build.com"
2360 0 0 0 $self->{'writemakefile'} ||= "CPAN::Distrostatus"->new("YES")
2704 0 0 0 $_make_phase_arg ||= $CPAN::Config->{$what}
2750 0 0 0 $prereq_pm ||= $self->{'prereq_pm'}
2755 0 0 0 $nmo ||= $CPAN::META->instance("CPAN::Module", $prereq)
2757 0 0 0 not $av or "CPAN::Version"->vlt($av, $prereq_pm->{$rt}{$prereq})
2875 0 0 0 not ref $optf or ref $optf ne "HASH"
2880 0 0 0 not ref $wantf or ref $wantf ne "ARRAY"
3043 0 0 0 $inst_file || (exists $prereq_pm->{'requires'}{$need_module} ? 0 : $available_file)
3044 0 0 0 !defined($need_version) || $need_version eq '0' || $need_version eq 'undef'
3071 0 0 0 exists $prereq_pm->{'requires'}{$need_module} || exists $prereq_pm->{'opt_requires'}{$need_module}
3238 0 0 0 !$self->{'mandatory'} || $self->is_locally_optional($prereq_pm, $need_module)
3331 0 0 0 $@ or not $yaml
3335 0 0 0 !ref($yaml) || ref $yaml ne 'HASH'
3374 8 0 0 $self->{'writemakefile'} or $self->{'modulebuild'}
3381 8 0 0 -f $makefile or -f $buildfile
3464 8 0 0 $req or $breq
3499 0 0 0 not $prevn or "CPAN::Version"->vlt($prevn, $n)
3507 8 0 0 $req or $breq
3532 8 0 0 $req or $breq
8 0 0 $req or $breq or $opt_req
0 0 0 $req or $breq or $opt_req or $opt_breq
3599 0 0 0 $self->{'writemakefile'} or $self->{'modulebuild'}
3794 0 0 0 -e "Build" or $^O eq "VMS" and -e "Build.com"
3921 0 0 0 !$self->{'prereq_pm'}{$m} || $self->{'prereq_pm'}{$m} == 0
4090 0 0 0 $goto_do->{'mandatory'} ||= $self->{'mandatory'}
4091 0 0 0 $goto_do->{'reqtype'} ||= $self->{'reqtype'}
4228 0 0 0 $^O eq 'MSWin32' || $^O eq 'VMS'
4328 0 0 0 !$mimc || $mimc eq 'CPAN::HandleConfig'->prefs_lookup($self, 'make')
4710 0 0 0 $CPAN::Config->{'http_proxy'} || $ENV{'http_proxy'}
4712 0 0 0 $CPAN::Config->{'no_proxy'} || $ENV{'no_proxy'}
4842 0 0 0 $CPAN::META->has_inst("YAML::XS") or $CPAN::META->has_inst("YAML::Syck")