Branch Coverage

blib/lib/Paranoid/IO/FileMultiplexer.pm
Criterion Covered Total %
branch 125 206 60.6


line true false branch
98 22 132 unless defined $args{'file'} and length $args{'file'}
100 132 22 if (defined $self) { }
106 0 132 if ($self->{'ro'}) { }
107 0 0 unless $self->_oldFile
109 44 88 unless $self->_newFile or $self->_oldFile
135 132 0 if (not $self->{'readOnly'}) { }
141 99 33 if (defined $header)
145 77 22 if ($rv)
151 77 0 if $rv = $header->allocate
152 77 0 if $rv
184 22 33 if (defined $header)
188 0 22 $self->{'readOnly'} ? :
189 22 0 if ($rv)
196 11 11 if ($rv)
235 8 0 if (pflock($file, 1))
236 8 0 if ($header->readSig and $header->readStreams) { }
264 2948 0 if (defined $sname and length $sname)
267 8 2940 unless $header->validateBlocks
270 34 2914 unless (exists $self->{'streams'}{$sname})
272 34 0 if (exists $streams{$sname}) { }
277 34 0 if (pflock($file, 1))
278 34 0 if $stream->readSig and $stream->readBATs
283 0 34 unless (exists $self->{'streams'}{$sname})
297 2948 0 exists $self->{'streams'}{$sname} ? :
301 2948 0 if (defined $stream)
302 0 2948 unless ($stream->validateEOS)
303 0 0 unless ($stream->readSig and $stream->readBATs)
336 1215 0 if (defined $stream)
341 1215 0 if ($seq <= $#bats)
344 1215 0 if (pflock($file, 1))
345 1215 0 if defined $bat and $bat->readSig and $bat->readData
351 0 1215 unless $rv
379 0 22 unless ($rv)
411 0 22 unless ($rv)
417 22 0 if ($rv)
419 0 22 unless $self->_chkData($_)
447 11 33 unless ($rv)
454 33 11 if ($rv)
458 0 22 unless $self->_chkBAT($_, $sname, $i)
500 22 0 if (pflock($file, 1)) { }
503 22 0 if ($header->readSig and $header->readStreams) { }
508 11 33 unless $self->_chkStream($streams{$_}, $_)
524 11 11 if ($rv) { }
552 114 0 if defined $data and $data->allocate and $header->incrBlocks
578 44 0 if defined $bat and $bat->allocate and $bat->writeSig and $header->incrBlocks
584 44 0 if defined $rv
609 33 0 if defined $stream and $stream->allocate and $stream->writeSig and $header->incrBlocks
615 33 0 if defined $rv
637 33 11 unless ($bypass)
640 33 0 if (pflock($file, 2)) { }
644 0 33 unless $header->validateBlocks
647 33 0 if $rv
677 543 865 if ($pos < $bsize) { }
683 865 0 if (defined $bat)
713 0 1702 unless defined $whence
714 0 1702 unless defined $whence
716 1180 522 if ($whence == 0) { }
719 522 0 if exists $self->{'streamPos'}{$sname}
721 0 522 if ($whence == 1) { }
522 0 elsif ($whence == 2) { }
732 0 1702 if $self->{'streamPos'}{$sname} < 0
734 1702 0 if defined $rv
735 526 1176 if $rv == 0
752 32 1124 unless exists $self->{'streamPos'}{$sname}
781 11 566 if ($#bats < $addr[0])
785 11 0 if ($rv) { }
796 647 0 $#bats == $addr[0] ? :
803 70 0 if ($rv) { }
811 577 0 if $#bats == $addr[0]
814 0 577 unless $rv
837 555 0 if (pflock($file, 2))
840 555 0 if (defined $stream and defined $content and length $content)
849 555 0 if ($self->_growStream($sname, @addr))
861 555 0 if (defined $bat and defined $block)
873 555 70 $clength <= $blkLeft ? :
884 0 625 unless ($bw == $chunk)
892 70 555 if ($rv < length $content)
894 0 70 unless ($bat->sequence == $addr[0])
909 555 0 if ($rv)
911 544 11 if $stream->eos < $pos
935 0 555 if $bypass
939 0 555 $bypass ? :
960 68 0 if (pflock($file, 1))
963 68 0 if (defined $stream and defined $cref and ref $cref eq 'SCALAR') { }
980 83 0 if (defined $bat)
987 83 0 if (defined $block)
990 0 83 unless $pos < $eos
997 55 28 if $ctr > $btr - $rv
1000 24 59 if $ctr > $eos - $pos
1010 0 83 unless ($br == $ctr)
1025 0 0 if (defined $stream)
1050 0 68 if $bypass
1053 0 68 $bypass ? :
1070 511 0 if (pflock($file, 2))
1072 511 0 if (defined $stream)
1074 511 0 if ($self->strmSeek($sname, 0, 2))
1101 11 0 if (pflock($file, 2))
1103 11 0 if (defined $stream)
1106 11 0 if ($neos < $eos)
1111 11 0 if $rv = $self->strmSeek($sname, $neos, 0) and $self->strmWrite($sname, $zeroes)
1134 0 11 if $bypass
1138 0 11 $bypass ? :
1146 132 22 if defined $self->{'file'} and length $self->{'file'}