Branch Coverage

blib/lib/Module/Patch.pm
Criterion Covered Total %
branch 58 110 52.7


line true false branch
23 5 1 if exists $INC{$mod_pm}
33 0 6 if ($self eq __PACKAGE__) { }
37 0 0 unless grep {$_ eq $exp;} @EXPORT_OK
42 0 6 if ${"${self}::handles";}
45 3 3 unless (${"${self}::patch_data_cached";})
53 0 6 if (exists $opts{'-load_target'})
61 1 5 if (exists $opts{'-force'})
69 0 6 if (exists $opts{'-warn_target_loaded'})
76 0 6 unless my $pdata = ${"${self}::patch_data_cached";}
80 0 6 if ($v == 1 or $v == 2) { }
6 0 elsif ($v == 3) { }
82 0 0 if ($v == 1) { }
0 0 elsif ($v == 2) { }
100 0 6 unless $target =~ s/(?<=\w)::[Pp]atch::\w+$//
104 5 1 if (is_loaded($target)) { }
105 0 5 unless ($loaded_by_us{$target})
106 0 0 if ($load and $warn)
114 1 0 if ($load) { }
116 0 1 if $@
119 0 0 if ($warn)
132 0 6 unless $k =~ /\A-/
135 1 5 if (exists $opts{$k})
141 1 5 if (keys %opts)
145 0 5 if ($pdata->{'after_read_config'})
149 0 5 if ($pdata->{'before_patch'})
158 0 4 if ($pdata->{'after_patch'})
168 0 4 if ($self eq __PACKAGE__) { }
171 0 4 unless my $pdata = ${"${self}::patch_data_cached";}
174 0 4 if ($pdata->{'before_unpatch'})
183 0 4 if ($pdata->{'after_unpatch'})
199 0 5 ref $package0 eq 'ARRAY' ? :
200 0 5 unless package_exists($target)
209 7 0 $opts->{'patch_module'} ? :
211 0 7 unless $act
212 0 7 unless $act =~ /\A(wrap|add|replace|add_or_replace|delete)\z/
214 0 7 if ($act eq 'delete') { }
215 0 0 if $pspec->{'code'}
218 0 7 unless $pspec->{'code'}
222 0 7 ref $pspec->{'sub_name'} eq 'ARRAY' ? :
224 0 7 if $_ eq ":all"
225 0 7 if $_ eq ":private"
226 0 7 if $_ eq ":public"
227 0 7 if /^:/
232 0 7 if (ref $sub_name eq 'Regexp') { }
233 0 0 unless ($target_subs)
237 0 0 if not $_ =~ ~@s and $_ =~ /$sub_name/
244 5 2 unless (not defined $pspec->{'mod_version'} or $pspec->{'mod_version'} eq ":all")
246 0 5 unless defined $target_version and length $target_version
250 2 3 ref $mod_versions eq 'ARRAY' ? :
253 0 7 if $_ eq ":all"
254 0 7 if /^:/
258 2 3 unless (grep {ref $_ eq "Regexp" ? $target_version =~ /$_/ : $target_version eq $_;} @$mod_versions)
259 0 7 ref $_ eq 'Regexp' ? :
264 1 1 $opts->{'force'} ? :
265 1 1 unless $opts->{'force'}