Branch Coverage

blib/lib/Proc/Launcher.pm
Criterion Covered Total %
branch 67 96 69.7


line true false branch
403 4 25 unless ($self->is_enabled)
408 1 24 if ($self->is_running)
415 19 5 if (my $pid = fork) { }
430 17 27 if ($locked_pid and $self->is_running($pid))
435 17 0 if ($locked_pid == $pid) { }
452 0 5 unless ($self->write_my_pid($$))
463 0 5 unless open STDIN, '<', '/dev/null'
465 0 5 unless open STDOUT, '>>', $self->log_file
466 0 5 unless open STDERR, '>>', $self->log_file
468 0 5 unless setsid()
475 0 5 if $self->run_as
480 1 4 if ($self->pipe)
483 1 0 unless (-p $named_pipe)
485 0 1 unless POSIX::mkfifo($named_pipe, 448)
487 0 1 unless open STDIN, '<', $named_pipe
491 2 3 if ($self->class) { }
499 0 2 if ($error) { }
512 0 2 unless (eval { do { $obj = $class->new('context', $self->context); 1 } })
524 0 2 unless (eval { do { $obj->$method($args); 1 } })
535 0 1 unless (eval { do { $self->start_method->($args); 1 } })
559 1 9 unless ($self->is_running)
594 1 2 $sleep ? :
618 112 19 unless ($pid)
620 67 64 unless $pid
628 50 14 if (kill 0, $pid)
629 0 50 if ($!{'EPERM'}) { }
679 3 6 unless ($self->is_running)
707 1 16 if ($self->pipe)
724 92 84 unless (-r $path)
730 0 84 unless open my $fh, '<', $path
735 0 84 unless close $fh
737 1 83 unless $line
739 0 83 unless $line
741 0 83 unless ($line =~ /^\d+$/)
766 0 5 unless ($pid)
769 0 5 if $self->is_running
774 0 5 unless open my $pid_fh, '>', $path
777 0 5 unless close $pid_fh
781 0 5 if (-r $self->pid_file)
787 0 5 unless (rename $path, $self->pid_file)
809 0 18 unless -r $self->pid_file
852 0 1 unless $self->pipe
855 0 1 unless (-r $self->pipe_file)
864 0 1 unless sysopen my $fh, $self->pipe_file, &POSIX::O_WRONLY
878 4 1 if ($self->is_enabled)
894 4 1 unless ($self->is_enabled)
913 11 33 if -r $self->disable_file
922 382 18 unless $self->debug