Branch Coverage

blib/lib/Paranoid/Filesystem.pm
Criterion Covered Total %
branch 142 228 62.2


line true false branch
92 6 1 if (defined $path)
93 2 4 ref $path eq 'Paranoid::Glob' ? :
100 1 6 unless defined $dirs
103 6 1 if ($rv)
104 2 4 defined $mode ? :
105 1 5 unless (&detaint(\$mode, "int"))
113 5 2 if ($rv)
120 0 11 if -d $directory
125 0 11 $parts[0] eq '' ? :
129 17 0 unless (-d $subdir)
130 17 0 if (mkdir $subdir, $mode) { }
170 0 7 unless defined $errRef
174 7 0 if (defined $target)
175 6 1 ref $target eq 'Paranoid::Glob' ? :
180 0 7 unless defined $glob
183 7 0 if ($rv)
195 2 19 unless (@fstat)
199 2 0 if $! == 2
209 12 7 if (S_ISDIR($fstat[2])) { }
212 1 11 unless (rmdir $_)
224 0 7 unless (unlink $_)
259 0 4 unless defined $errRef
263 4 0 if (defined $target)
264 0 4 ref $target eq 'Paranoid::Glob' ? :
269 0 4 unless defined $glob
271 4 0 if ($rv)
300 1 5 unless (defined $dir and -e $dir and -d _ and -r _)
302 1 0 !-d(_) ? :
3 1 !-e(_) ? :
0 4 !defined($dir) ? :
312 5 4 if ($rv)
317 5 0 if ($rv) { }
321 13 10 unless /^\.\.?$/s
326 0 5 if $noLinks
357 3 0 unless defined $noLinks
363 2 1 if $rv
388 3 0 unless defined $noLinks
395 2 1 if $rv
414 8 1 if (defined $filename)
459 0 2 unless (defined $link and scalar lstat $link)
469 0 2 if ($fullyTranslate) { }
475 0 0 if (defined $target) { }
492 2 0 if (-l $link)
499 2 0 if ($target =~ m[^(?:\.\.?/|[^/])]s) { }
512 2 0 if defined $link
538 2 5 unless defined $errRef
542 7 0 if (defined $target)
543 3 4 ref $target eq 'Paranoid::Glob' ? :
548 0 7 unless defined $glob
550 7 0 if ($rv)
553 4 3 unless defined $stamp
555 0 7 unless (&detaint(\$stamp, "int"))
563 7 0 if ($rv)
574 4 12 unless (-e $target)
578 2 2 if (defined $fh) { }
587 14 2 if ($irv)
588 0 14 unless (utime $stamp, $stamp, $target)
621 1 2 unless defined $errRef
625 3 0 if (defined $target)
626 1 2 ref $target eq 'Paranoid::Glob' ? :
631 0 3 unless defined $glob
633 3 0 if ($rv)
660 12 9 if (defined $perm and $perm =~ /^\d+$/s) { }
6 3 elsif (defined $perm and $perm =~ /^([ugo]+)([+\-])([rwxst]+)$/s) { }
662 2 10 if ($perm =~ /^0/s) { }
663 1 1 if ($perm =~ /^0[0-8]{3,4}$/s) { }
684 3 3 if $tmp[0] =~ /u/s
685 2 4 if $tmp[0] =~ /g/s
686 4 2 if $tmp[0] =~ /o/s
687 6 0 if $tmp[2] =~ /r/s
688 5 1 if $tmp[2] =~ /w/s
689 6 0 if $tmp[2] =~ /x/s
691 1 5 if $tmp[2] =~ /t/s
692 0 6 if $tmp[2] =~ /s/s and $tmp[0] =~ /g/s
693 1 5 if $tmp[2] =~ /s/s and $tmp[0] =~ /u/s
704 17 4 defined $rv ? :
727 1 7 unless defined $errRef
731 8 0 if (defined $target)
732 6 2 ref $target eq 'Paranoid::Glob' ? :
737 0 8 unless defined $glob
740 8 0 if (defined $perms and defined($ptrans = &ptranslatePerms($perms))) { }
741 3 5 if ($perms =~ /[ugo]+[+-]/is) { }
742 0 3 $perms =~ /-/s ? :
751 8 0 if ($rv)
760 8 12 if (defined $ptrans) { }
764 1 7 unless (@fstat)
776 7 0 $addPerms ? :
788 7 0 $addPerms ? :
794 0 7 unless (chmod $cperms, $_)
807 12 0 if (&detaint(\$perms, 'int')) { }
817 2 10 unless (chmod $perms, $_)
858 2 2 unless defined $errRef
862 4 0 if (defined $target)
863 0 4 ref $target eq 'Paranoid::Glob' ? :
868 0 4 unless defined $glob
870 4 0 if ($rv)
901 0 0 unless defined $user
902 0 0 unless defined $group
903 0 0 unless $user =~ /^-?\d+$/s
904 0 0 unless $group =~ /^-?\d+$/s
905 0 0 unless (defined $user and defined $group)
912 0 0 unless defined $errRef
916 0 0 if (defined $target)
917 0 0 ref $target eq 'Paranoid::Glob' ? :
922 0 0 unless defined $glob
924 0 0 if ($rv and $user != -1 || $group != -1)
937 0 0 unless (chown $user, $group, $_)
974 0 0 unless defined $errRef
978 0 0 if (defined $target)
979 0 0 ref $target eq 'Paranoid::Glob' ? :
984 0 0 unless defined $glob
986 0 0 if ($rv)
1012 2 0 if (&detaint(\$binary, 'filename', \$b)) { }
1017 1 4 if (-r "$_/$b" and -x _)