Branch Coverage

blib/lib/Module/Pluggable/Object.pm
Criterion Covered Total %
branch 97 122 79.5


line true false branch
34 3 69 if $$self{'inner'}
44 21 123 if exists $$self{$_} and not ref $$self{$_}
55 50 22 unless exists $$self{'follow_symlinks'}
58 0 72 exists $INC{'blib.pm'} && defined $filename && $filename =~ m[(^|/)blib/] && !$$self{'force_search_all_paths'} ? :
61 4 68 if defined $$self{'search_dirs'}
65 68 4 unless $$self{'search_dirs'}
66 4 68 if defined $$self{'search_dirs'}
73 3 69 unless @plugins
79 0 222 unless $self->_is_legit($_)
84 3 66 if (defined $$self{'instantiate'}) { }
88 8 2 unless $package->can($method)
90 0 2 if $@
91 2 0 if $obj
109 13 59 if (defined $$self{'only'})
110 4 9 if (ref $$self{'only'} eq 'ARRAY') { }
5 4 elsif (ref $$self{'only'} eq 'Regexp') { }
4 0 elsif (ref $$self{'only'} eq '') { }
120 12 60 if (defined $$self{'except'})
121 4 8 if (ref $$self{'except'} eq 'ARRAY') { }
4 4 elsif (ref $$self{'except'} eq 'Regexp') { }
4 0 elsif (ref $$self{'except'} eq '') { }
139 0 490 unless $$self{'_exceptions'}{'only_hash'}
140 0 490 unless $$self{'_exceptions'}{'except_hash'}
145 16 474 if keys %only and not $only{$plugin}
146 9 465 unless not defined $only or $plugin =~ /$only/
148 8 457 if keys %except and $except{$plugin}
149 4 453 if defined $except and $plugin =~ /$except/
151 1 452 if defined $$self{'max_depth'} and $depth > $$self{'max_depth'}
152 3 449 if defined $$self{'min_depth'} and $depth < $$self{'min_depth'}
184 651 79 unless -e $sp and -d _
191 0 182 unless ($file) = $file =~ /(.*$file_regex)$/
195 1 181 if not $$self{'include_editor_junk'} and $self->_is_editor_junk($name)
203 2 179 if ($name eq lc $name or $name eq uc $name)
205 0 2 unless open PKGFILE, "<$pkg_file"
208 0 2 if $line =~ /^=\w/
209 0 2 if $line =~ /^=cut/
210 0 2 if $in_pod or $line =~ /^=cut/
211 0 2 if $line =~ /^\s*#/
212 2 0 if ($line =~ /^\s*package\s+(.*::)?($name)\s*;/i)
213 2 0 if defined $1
222 0 181 if $^O =~ /MSWin32|dos/
224 181 0 if ($directory) { }
226 42 139 unless $directory eq '.'
230 42 0 unless defined $pkg_dir
238 0 181 unless $plugin =~ /(?:[a-z\d]+)[a-z\d]*/i
258 0 179 if $name =~ /~$/
261 1 178 if $name =~ /^\.#/
263 0 178 if $name =~ /\.sw[po]$/
274 41 227 unless $self->_is_legit($plugin)
275 124 103 unless (defined $$self{'instantiate'} or $$self{'require'})
280 11 92 if defined $$self{'before_require'}
281 28 74 unless ($no_req)
286 1 27 if ($err)
287 1 0 if (defined $$self{'on_require_error'}) { }
288 1 0 unless $$self{'on_require_error'}($plugin, $err)
294 9 92 if defined $$self{'after_require'}
314 130 185 unless $File::Find::name =~ /$file_regex/
332 729 1 unless ref $dir and eval { do { $dir->can('files') } }
337 0 1 unless $plugin =~ /^$path::/
346 3 149 if exists $$self{'inner'} and not $$self{'inner'}
363 1 27 if $@