Branch Coverage

blib/lib/IPC/Semaphore/SmokeSignals.pm
Criterion Covered Total %
branch 54 90 60.0


line true false branch
11 3 0 if (eval { do { require bytes; 1 } })
47 2 2 if (not $path) { }
48 0 2 unless pipe $smoke, $stoke
51 2 0 if ($perm and not -e $path)
52 2 0 if $nowait
56 0 2 unless mkfifo($path, $perm)
59 2 0 $perm || $nowait ? :
60 0 2 unless sysopen $smoke, $path, 0 | $extra, $perm
62 0 2 unless -p $smoke
64 0 2 unless sysopen $stoke, $path, 1
88 0 2 if $path
105 0 4 if (ref $fuel) { }
106 0 0 unless @$fuel
110 0 4 unless $fuel =~ /^[1-9][0-9]*$/
126 2 0 if (flock $$me[_SMOKE()], 6)
128 0 2 if (defined $puff) { }
148 4 0 if (not ref $fuel) { }
159 0 0 unless $puff =~ /[^\0]/
174 1 9 if (ref $$me[_PUFFS()])
176 0 1 if wantarray
186 7 7 if $impatient
191 7 7 if $impatient
194 5 0 if $impatient and $got_none and 11 == $excuse || 11 == $excuse
199 0 9 if $got_none
201 0 7 unless ($nil or $puff =~ /[^\0]/)
205 0 0 if wantarray
216 0 13116 if ($bytes != length $puff)
219 1 13115 unless syswrite $stoke, $puff
233 2 0 if defined $puffs and $$ == ($$me[_OWNER()] || 0)
237 0 2 if ref $puffs and not @$puffs
240 2 0 if (defined $left)
242 1 1 if $left
255 0 1 if ref $puffs and not @$puffs
269 1 1 if (not ref $puffs) { }
281 1 2 if (not defined $puff) { }
1 1 elsif ($puff =~ /[^\0]/) { }
282 1 0 unless ($room or $eops)
287 1 0 if $room < 2
293 1 0 unless $puffs or $eops
295 2 0 if (not $impatient && defined $puff or $puff =~ /[^\0]/)
303 1 1 if ($impatient and not defined $puff)
307 0 1 if 2 < ++$loops
327 0 9 unless my($puff) = $pipe->_Bogart($impatient)
329 2 7 unless $puff
341 1 5 unless @$me