Branch Coverage

blib/lib/LibZip/MyFile.pm
Criterion Covered Total %
branch 51 196 26.0


line true false branch
31 0 1 if ($nofile) { }
46 0 1 if ($directory ne '' and $file ne '' and substr($directory, -1) ne '/' and substr($file, 0, 1) ne '/') { }
63 0 0 if ($nofile) { }
93 0 0 if $volume =~ m[^([\\/])[\\/][^\\/]+[\\/][^\\/]+\Z(?!\n)]s and $directory =~ m[^[^\\/]]s
102 0 0 if (not $volume =~ /^[a-zA-Z]:\Z(?!\n)/s and $volume =~ m[[^\\/]\Z(?!\n)] and $file =~ m[[^\\/]])
107 0 0 $1 ? :
120 0 0 if ($nofile) { }
134 0 0 unless defined $volume
135 0 0 if $volume and $directory
136 0 0 if ($directory) { }
138 0 0 unless substr($directory, -1) eq ':'
139 0 0 unless substr($directory, 0, 1) eq ':'
143 0 0 unless defined $file
151 0 0 unless ($volume or $directory)
152 0 0 if $file
157 0 0 unless substr($path, -1) eq ':'
159 0 0 if ($directory)
162 0 0 unless substr($path, -1) eq ':'
165 0 0 if ($file)
176 0 0 if ($nofile) { }
206 0 0 if $volume =~ m[^([\\/])[\\/][^\\/]+[\\/][^\\/]+\Z(?!\n)]s and $directory =~ m[^[^\\/]]s
215 0 0 if (not $volume =~ /^[a-zA-Z]:\Z(?!\n)/s and $volume =~ m[[^\\/]\Z(?!\n)] and $file =~ m[[^\\/]])
220 0 0 $1 ? :
239 0 0 if ($dev =~ m[^/+([^/]+)]) { }
240 0 0 unless $dev eq '' or $dev =~ /:\Z(?!\n)/
241 0 0 if (length $dev or length $dir)
242 0 0 unless $dir =~ m([\[
264 0 3 if ($fstype =~ /^VMS/i)
265 0 0 if ($fullname =~ m[/]) { }
271 0 3 if ($fstype =~ /^MS(DOS|Win32)|epoc/i) { }
0 3 elsif ($fstype =~ /^os2/i) { }
0 3 elsif ($fstype =~ /^MacOS/is) { }
0 3 elsif ($fstype =~ /^AmigaOS/i) { }
3 0 elsif (not $fstype =~ /^VMS/i) { }
273 0 0 unless $dirpath =~ m[[\\/]\z]
277 0 0 unless $dirpath
278 0 0 unless $dirpath =~ m[[\\/]\z]
282 0 0 unless $dirpath
286 0 0 unless $dirpath
290 0 3 if ($^O eq 'VMS' and $fullname =~ m[^(/[^/]+/000000(/|$))(.*)])
299 0 3 unless $dirpath
302 0 3 if (@suffices)
305 0 0 $igncase ? :
306 0 0 if ($basename =~ s/$pat//s)
313 0 3 if defined $tail
314 3 0 wantarray ? :
322 0 2 if ($fstype =~ /VMS/i)
323 0 0 if ($_[0] =~ m[/]) { }
326 0 2 if ($fstype =~ /MacOS/i) { }
0 2 elsif ($fstype =~ /MS(DOS|Win32)|os2/i) { }
0 2 elsif ($fstype =~ /AmigaOS/i) { }
327 0 0 unless (length $basename or $dirname =~ /^[^:]+:\z/)
331 0 0 unless $dirname =~ /:\z/
335 0 0 unless (length $basename)
341 0 0 if ($dirname =~ /:\z/)
343 0 0 unless length $basename
347 1 1 unless (length $basename)
359 2 0 if (@_)
363 0 2 wantarray ? :
382 0 2 $Is_MacOS ? :
383 2 0 unless defined $mode
384 2 0 unless ref $paths
387 0 2 if $^O eq 'os2' and $path =~ /^\w:\z/s
389 1 1 if -d $path
391 0 1 unless (-d $parent or $path eq $parent)
394 0 1 if $verbose
395 0 1 unless (mkdir $path, $mode)
406 0 0 if not $LibZip::END
416 2 0 if (defined $roots and length $roots) { }
417 1 1 unless ref $roots
426 0 2 if ($Is_MacOS) { }
427 0 0 unless $root =~ /:/
432 0 2 unless my(undef, undef, $rp) = lstat $root
434 1 1 if (-d _) { }
439 0 1 $Is_VMS ? :
1 0 unless $safe
443 1 0 if (opendir my $d, $root) { }
445 0 1 if (not defined ${"\cTAINT";} or ${"\cTAINT";}) { }
460 0 1 if $Is_VMS
461 0 1 if $Is_VMS
462 0 1 if ($Is_MacOS) { }
468 0 0 $Is_VMS ? :
0 0 if ($safe and $Is_VMS ? !&VMS::Filespec::candelete($root) : !(-w $root))
470 0 0 if $verbose
473 0 1 if $force_writeable
476 0 1 if $verbose
477 1 0 if (rmdir $root) { }
482 0 0 $Is_VMS ? :
0 0 unless chmod $rp, $Is_VMS ? VMS::Filespec::fileify($root) : $root
488 0 0 $Is_VMS ? :
0 0 if ($safe and $Is_VMS ? !&VMS::Filespec::candelete($root) : !(-l $root || -w $root))
492 0 0 if $verbose
495 0 1 if $force_writeable
498 0 1 if $verbose
501 0 1 unless (unlink $root)
503 0 0 if ($force_writeable)
504 0 0 unless chmod $rp, $root
511 1 0 unless $Is_VMS and lstat $root