Branch Coverage

blib/lib/POE/Component/SmokeBox/Backend.pm
Criterion Covered Total %
branch 96 162 59.2


line true false branch
20 0 44 $^O =~ /^(free|midnight|dragonfly)(bsd)?$/ ? :
36 0 44 if ($^O eq "MSWin32")
46 0 0 if (eval { do { require Win32API::File } }) { }
80 0 108 unless ($opts{'event'})
84 22 86 unless $opts{'idle'}
85 23 85 unless $opts{'timeout'}
86 106 2 unless $opts{'timer'}
87 108 0 unless $opts{'reaper'}
88 4 104 unless $opts{'type'}
90 0 108 unless grep {$_ eq $opts{'command'};} @cmds
91 0 108 unless $opts{'perl'}
92 107 1 unless $opts{'no_log'}
93 24 84 unless exists $opts{'check_warnings'}
95 108 0 if ($opts{'check_warnings'})
99 0 108 if ($opts{'command'} eq "smoke" and not $opts{'module'})
106 1 107 unless ($type)
111 0 107 if ($@)
116 0 107 unless ($self->{'backend'} or $self->{'backend'}->can($self->{'command'}))
120 107 0 if ($self->{'backend'}->can("digest"))
125 0 107 unless ($self->{'program'} or ref $self->{'program'} eq "ARRAY")
130 37 70 if $cmd eq "smoke"
131 7 100 ref $options eq 'HASH' ? :
148 0 0 unless $self->{'_wheel_log'}
161 0 107 if ($kernel == $sender and not $self->{'session'})
165 0 107 if ($self->{'session'}) { }
166 0 0 if (my $ref = $kernel->alias_resolve($self->{'session'})) { }
178 107 0 if $kernel != $sender
182 74 33 if (not $self->{'_reset_digest'}) { }
198 0 0 if (not $self->{'_reset_digest'}) { }
217 0 74 unless tie %{$$self{"_digests"};}, "SDBM_File", $file, 66, 420
223 74 0 if ($self->{'_digests'})
227 0 74 if -d $self->{'_tmpdirname'}
236 6 101 if ($self->{'do_callback'})
238 1 5 unless ($self->{'do_callback'}->("BEFORE", $self))
239 0 1 if $self->{'debug'} or $ENV{'PERL5_SMOKEBOX_DEBUG'}
259 0 106 if $^O eq "MSWin32"
262 106 0 $GOT_PTY ? :
275 101 5 unless $self->{'command'} eq "index"
281 105 1 unless $self->{'no_log'}
282 0 106 if $self->{'debug'} or $ENV{'PERL5_SMOKEBOX_DEBUG'}
289 5 101 if ($self->{'do_callback'})
295 1 105 if $self->{'wheel'}
304 74 33 if (not $self->{'_reset_digest'}) { }
318 0 107 if $self->{'debug'} or $ENV{'PERL5_SMOKEBOX_DEBUG'}
319 37 70 if $self->{'command'} eq "smoke"
327 0 0 if $self->{'debug'} or $ENV{'PERL5_SMOKEBOX_DEBUG'}
334 106 106 if $operation eq "read" and not $errnum
335 0 212 if $self->{'debug'} or $ENV{'PERL5_SMOKEBOX_DEBUG'}
343 0 106 if $self->{'debug'} or $ENV{'PERL5_SMOKEBOX_DEBUG'}
350 693 381 if $self->{'_killed'}
352 380 1 unless $self->{'no_log'}
353 0 381 if $self->{'debug'} or $ENV{'PERL5_SMOKEBOX_DEBUG'}
354 1 380 if ($self->_detect_loop($input, "stdout"))
363 0 42 if $self->{'_killed'}
365 42 0 unless $self->{'no_log'}
366 0 42 if ($self->{'debug'} or $ENV{'PERL5_SMOKEBOX_DEBUG'})
367 0 0 if (length $input > 5000) { }
374 0 42 if ($self->_detect_loop($input, "stderr"))
385 73 350 if $self->{'_loop_detect'}
386 33 317 if (my $reset = $self->{'_reset_digest'})
387 0 33 if (eval { do { $input =~ /$reset/ } })
388 0 0 if $self->{'debug'} or $ENV{'PERL5_SMOKEBOX_DEBUG'}
392 0 350 if $input =~ /^\[(MSG|ERROR)\]/
396 350 0 if (do { length $input <= 5000 if $self->{'check_warnings'} }) { }
399 350 0 if $self->{'check_warnings'}
400 0 350 $handle eq 'stderr' && String::Perl::Warnings::is_warning($input) ? :
402 0 0 $handle eq 'stderr' ? :
405 277 73 if (exists $self->{'_digests'}{$digest}) { }
411 349 1 unless ++$self->{'_digests'}{$digest} > 3000
434 0 0 if $line =~ /$re/
442 1 1 if ($now - $self->{'_wheel_time'} >= $self->{'idle'})
447 1 0 if ($now - $self->{'start_time'} >= $self->{'timeout'})
458 0 3 if $self->{'_killed'}
460 3 0 unless $self->{'no_log'}
461 0 3 if $self->{'debug'} or $ENV{'PERL5_SMOKEBOX_DEBUG'}
462 0 3 if ($^O eq 'MSWin32' and $self->{'wheel'}) { }
466 0 3 if (not $self->{'no_grp_kill'}) { }
467 0 0 if ($^O eq 'solaris') { }
468 0 0 if $self->{'wheel'}
471 0 0 if $self->{'wheel'}
478 3 0 if $self->{'wheel'}