Condition Coverage

blib/lib/XS/Install.pm
Criterion Covered Total %
condition 67 225 29.7


and 2 conditions

line l !l condition
954 0 86 $_[0]{'C'} && scalar @{$_[0]{'C'};}
955 0 2 $_[0]{'OBJECT'} && scalar @{$_[0]{'OBJECT'};}
956 0 2 $_[0]{'XS'} && scalar keys %{$_[0]{'XS'};}
957 0 2 $_[0]{'MODULE_INFO'} && $_[0]{'MODULE_INFO'}{'STATIC_LIBS'} && scalar @{$_[0]{'MODULE_INFO'}{'STATIC_LIBS'};}

and 3 conditions

line !l l&&!r l&&r condition
142 27 4 0 $params->{'BIN_SHARE'} and not ref $params->{'BIN_SHARE'}
143 27 4 0 $params->{'BIN_SHARE'} and $params->{'LINK'}
286 31 0 0 $info->{'CPLUS'} and !$params->{'CPLUS'} || $params->{'CPLUS'} < $info->{'CPLUS'}
363 77 102 0 $deps and @$deps
370 0 0 0 $deps and @$deps
375 0 77 0 $deps and @$deps
398 0 0 0 $info->{'GMAKE'} and $native_bsd_make
456 0 0 0 $info->{'GMAKE'} and $native_bsd_make
462 0 0 0 exists $info->{'FILE'} and ref $info->{'FILE'} ne "ARRAY"
545 3 1 0 $bin_share->{'LIBS'} and ref $bin_share->{'LIBS'} ne "ARRAY"
555 4 0 0 $bin_share->{'PARSE_XS'} and ref $bin_share->{'PARSE_XS'} ne "ARRAY"
628 0 0 0 @preload and not $win32
865 0 31 0 $list and @$list
878 0 0 0 defined $lastc and $lastc ne "\n"
0 0 0 defined $lastc and $lastc ne "\n" and $lastc ne "\r"
907 31 0 0 $add_libs and @$add_libs
910 0 0 0 $libs and @$libs
1089 31 0 31 defined $val and length $val

or 2 conditions

line l !l condition
108 0 31 $postamble ||= []
111 0 31 $params->{'clean'} ||= {}
112 0 31 $params->{'clean'}{'FILES'} ||= ""
125 0 31 XS::Install::Payload::binary_module_info($params->{'NAME'}) || {}
136 0 31 $params->{'INC'} || ''
165 0 31 $params->{'CONFIGURE_REQUIRES'} ||= {}
166 0 31 $params->{'BUILD_REQUIRES'} ||= {}
168 0 31 $params->{'TEST_REQUIRES'} ||= {}
169 0 31 $params->{'TEST_REQUIRES'}{'Test::Simple'} ||= "0.96"
170 0 31 $params->{'TEST_REQUIRES'}{'Test::More'} ||= 0
171 0 31 $params->{'TEST_REQUIRES'}{'Test::Deep'} ||= 0
173 0 31 $params->{'PREREQ_PM'} ||= {}
187 0 31 $params->{'PMLIBDIRS'} ||= ["lib", $name_parts[-1]]
235 0 31 $params->{'MODULE_INFO'}{'VISIBLE_BIN_DEPS'} ||= []
282 31 0 $params->{'TYPEMAPS'} ||= []
289 31 0 $params->{'PARSE_XS'} ||= []
335 77 0 XS::Install::Deps::find_xsi_deps([$xsfile])->{$xsfile} || []
371 0 0 $$cdeps{$xsi{$f}} ||= []
419 0 0 $info->{'FLAGS'} ||= ""
457 0 0 $info->{'TARGET'} ||= ""
458 0 0 $info->{'FLAGS'} ||= ""
531 1 3 delete $bin_share->{'TYPEMAPS'} || {}
536 1 3 delete $bin_share->{'INCLUDE'} || {}
654 0 0 $params->{'LD'} ||= "\$(CC)"
681 0 31 $params->{'LDFROM'} ||= "\$(OBJECT)"
699 0 31 $params->{'LDDLFLAGS'} || ''
710 0 0 shift() || []
711 0 0 shift() || []
718 0 0 $tp->{'NAME'} || 'MyTest'
744 0 0 $tp->{'VERSION'} || '0.0.0'
794 0 0 $test->{'INC'} || ''
830 0 0 $params->{'INC'} ||= ""
833 0 0 $bs->{'INCLUDE'} //= 1
891 0 3 $params->{'dynamic_lib'} ||= {}
908 0 0 $params->{'LIBS'} || []
962 31 0 $to ||= ""
984 16 0 $params->{'PM'} ||= {}
1081 37 76 $_[0] ||= ""
1087 31 31 $s //= ""
1161 0 0 $MY::Config{'dlltool'} || 'dlltool'
1202 0 0 $cpp ||= "c++"

or 3 conditions

line l !l&&r !l&&!r condition
114 0 0 31 $ENV{'COMPILER'} || $ENV{'CC'}
139 0 31 0 $params->{'UNIQUE_LIBNAME'} //= $win32
143 0 0 0 $params->{'BIN_SHARE'}{'LINK'} //= $params->{'LINK'}
158 1 30 0 $params->{'VERSION_FROM'} ||= $pm
159 1 30 0 $params->{'ABSTRACT_FROM'} ||= -f $pod ? $pod : $pm
176 0 31 0 $params->{'CONFIGURE_REQUIRES'}{$THIS_MODULE} ||= $VERSION
177 0 31 0 $params->{'PREREQ_PM'}{$THIS_MODULE} ||= $VERSION
232 31 0 0 $params->{'CONFIGURE_REQUIRES'}{$module} ||= $installed_version
233 31 0 0 $params->{'PREREQ_PM'}{$module} ||= $installed_version
286 0 0 0 !$params->{'CPLUS'} || $params->{'CPLUS'} < $info->{'CPLUS'}
305 6 25 0 $params->{'XS'} ||= $params->{'_XSTEST'} ? [] : [_scan_files($xs_mask)]
306 3 28 0 $params->{'C'} ||= $params->{'_XSTEST'} ? [] : [_scan_files($c_mask)]
454 0 0 0 $build_cmd or $build_dep
567 0 0 0 $bin_share->{'CPLUS'} //= $params->{'CPLUS'}
638 0 0 0 $params->{'CC'} || $XS::Install::Config{'cc'}
705 0 0 0 $tp->{'SRC'} or $tp->{'XS'}
0 0 0 $tp->{'SRC'} or $tp->{'XS'} or $tp->{'CLIB'}
744 0 0 0 $tp->{'CPLUS'} // $params->{'CPLUS'}
0 0 0 $tp->{'CC'} || $params->{'CC'}
0 0 0 $tp->{'LD'} || $params->{'LD'}
0 0 0 $tp->{'PARSE_XS'} || $params->{'PARSE_XS'}
749 0 0 0 has_binary($mm_args) or $tp->{'CLIB'}
773 0 0 0 $creq->{$k} //= $prereq->{$k}
774 0 0 0 $treq->{$k} //= $prereq->{$k}
958 0 0 2 has_c($_[0]) || has_object($_[0]) || has_xs($_[0]) || has_ext($_[0])
1006 0 4 0 $params->{'DLEXT'} || $XS::Install::Config{'dlext'}
1050 12 6 0 $map->{$source} || $source