Branch Coverage

blib/lib/Paranoid/IO.pm
Criterion Covered Total %
branch 104 156 66.6


line true false branch
112 114 0 if (defined $fh and ref $fh eq 'GLOB')
114 83 0 if ($files{$_}{'fh'} eq $fh)
115 83 0 if $rv = $_
140 82 0 if (defined $filename)
143 5 77 if (ref $filename eq 'GLOB') { }
147 72 5 if exists $files{$filename}
151 75 7 if (defined $fh and fileno $fh)
157 79 3 if defined $filename
159 0 82 unless $rv
182 36 0 unless @files
184 0 8 unless pclose($_)
210 85 0 if (defined $filename)
214 1 84 unless defined $mode
215 75 10 unless defined $perms
216 0 85 unless (&detaint(\$mode, 'int'))
221 0 85 unless (&detaint(\$perms, 'int'))
236 85 0 if ($rv)
237 85 0 if (&detaint(\$filename, 'filename', \$f)) { }
244 27 58 $tmp{'mode'} & 64 ? :
245 74 11 if ($rv) { }
280 6 0 if (defined $filename and exists $files{$filename})
287 6 0 fileno $fh ? :
292 6 0 if (pclose($filename))
295 1 5 if $tmp{'mode'} & 512
299 6 0 if ($rv)
308 6 0 if $filename ne $tmp{'real'}
336 716 0 if (defined $filename)
337 89 627 if (ref $filename eq 'GLOB') { }
341 548 79 if exists $files{$filename}
345 625 91 if (defined $filename and exists $files{$filename}) { }
79 12 elsif (defined $filename) { }
12 0 elsif (not defined $filename and defined $fh) { }
348 619 6 if ($files{$filename}{'pid'} == $$) { }
350 619 0 if (fileno $fh) { }
361 0 0 if _reopen($filename)
368 6 0 if _reopen($filename)
375 68 11 if _open($filename, $mode, $perms)
381 10 2 fileno $fh ? :
407 0 0 unless @files
408 0 0 unless _reopen($_)
430 1036 0 if (defined $filename)
433 20 1016 if (ref $filename eq 'GLOB') { }
437 1014 2 if exists $files{$filename}
440 1034 2 if (defined $fh)
448 1018 0 if defined $filename and exists $files{$filename}
450 0 1034 unless $rv
476 77 0 if (defined $filename)
479 75 2 if (defined $fh)
481 0 75 unless $rv
509 17 0 if (defined $filename)
512 15 2 if (defined $fh)
514 1 14 unless $rv
544 12 4 if (defined $filename and defined $out and length $out)
551 12 0 if (defined $fh)
552 12 0 if (pflock($filename, 2))
553 8 4 unless defined $wlen
554 10 2 unless defined $offset
556 12 0 if (defined $rv) { }
593 260 0 if (defined $filename and defined $out and length $out)
599 260 0 if (defined $fh)
602 260 0 if (pflock($filename, 2))
608 260 0 if ($pos and sysseek $fh, 0, 2)
611 260 0 unless defined $wlen
612 260 0 unless defined $offset
614 260 0 if (defined $rv) { }
656 244 0 if (defined $filename)
663 241 3 if (defined $fh)
664 241 0 if ($nolock or pflock($filename, 1))
665 228 13 unless defined $rlen
666 241 0 unless defined $offset
668 239 2 if (defined $rv) { }
675 240 1 unless $nolock
715 1 0 if (defined $filename)
716 1 0 unless defined $pos
720 1 0 if (defined $fh)
721 1 0 if (pflock($filename, 2))
724 1 0 if ($rv) { }
725 0 1 if $cpos > $pos