Branch Coverage

blib/lib/Mojo/IOLoop/ReadWriteFork.pm
Criterion Covered Total %
branch 54 90 60.0


line true false branch
26 4 4 unless +(shift())->{'pid'}
31 0 3 $_[0] eq 'stdout' ? :
32 0 3 unless my $fh = delete $self->{$what}
33 0 3 unless $fh->close
38 23 9 ref $_[-1] eq 'HASH' ? :
64 34 4 ref $_[0] ? :
71 2 36 unless $args->{'program'}
80 11 25 if ($args->{'conduit'} eq 'pipe') { }
25 0 elsif ($args->{'conduit'} eq 'pty') { }
0 0 elsif ($args->{'conduit'} eq 'pty3') { }
97 2 34 if $args->{'stderr'}
102 0 36 unless defined($self->{'pid'} = fork)
103 33 3 $self->{'pid'} ? :
109 2 1 if (my $pty = &blessed($fh->{'stdin_write'}) && $fh->{'stdin_write'}->isa('IO::Pty') && $fh->{'stdin_write'})
112 0 2 if $args->{'raw'}
113 0 2 if $args->{'clone_winsize_from'}
119 0 3 unless open STDIN, "<&" . fileno($fh->{'stdin_read'})
120 3 0 if $stdout_no
121 3 0 if $stderr_no
122 3 0 $stdout_no ? :
123 3 0 $stderr_no ? :
127 0 3 if $fh->{'stderr_read'}
132 0 3 if (ref $args->{'program'} eq 'CODE') { }
135 0 0 unless $args->{'program_args'}
136 0 0 $@ ? :
137 0 0 if length $@
140 0 3 unless $args->{'program_args'}
154 23 10 if &blessed($fh->{'stdout_read'}) and $fh->{'stdout_read'}->isa("IO::Pty")
155 0 33 if $args->{'conduit'} eq "pty3"
156 2 31 if $fh->{'stderr_read'}
157 32 1 if not $fh->{'stderr_read'} or $args->{'stdout'}
167 3 3 if $cb
169 2 4 if $self->{'stdin_write'}
176 0 0 unless my $pid = $self->{'pid'}
182 0 0 if $! == 11 or $! == 4 or $! == 11
183 0 0 if $! == 104 or $! == 32
192 33 32 if $self->{'wait_eof'} or $self->{'wait_sigchld'}
199 1 37 unless eval { do { $self->$cb(@$self{"exit_value", "signal"}); 1 } }
207 0 24 unless pipe my $read, my $write
224 3 31 $self->{'stderr_read'} ? :
230 0 22 if $! != 5
238 29 6 unless length $self->{'stdin_buffer'}
242 0 6 unless defined $written
247 0 6 if (length $self->{'stdin_buffer'}) { }
251 0 0 if $self