Condition Coverage

blib/lib/IPC/Exe.pm
Criterion Covered Total %
condition 55 141 39.0


and 2 conditions

line l !l condition
156 0 0 carp('IPC::Exe::exe() cannot create pipe to STDIN', "\n ", $!) and return ()
168 0 0 carp('IPC::Exe::exe() cannot create pipe from STDERR', "\n ", $!) and return ()
212 0 0 carp('IPC::Exe::exe() cannot dup STDIN', "\n ", $!) and return ()
325 0 60 not $Reader || $opt{'stdout'} and $reap == $gotchild || $reap == -1 || $reap == 0 and $ret[0] = -1
636 0 0 carp('IPC::Exe::bg() cannot dup STDOUT', "\n ", $!) and return ()
793 0 0 carp('IPC::Exe cannot dup STDIN', "\n ", $!) and return undef
797 0 0 carp('IPC::Exe cannot dup STDOUT', "\n ", $!) and return undef
801 0 0 carp('IPC::Exe cannot dup STDERR', "\n ", $!) and return undef

and 3 conditions

line !l l&&!r l&&r condition
111 0 1171 0 $] >= 5.008 and ${^TAINT}
116 1078 1 45 @_ == 1 and _reftype($_[0]) eq 'CODE'
238 990 0 0 defined $IPC::Exe::_binmode_io and index($IPC::Exe::_binmode_io, ':') == 0
325 172 60 0 not $Reader || $opt{'stdout'} and $reap == $gotchild || $reap == -1 || $reap == 0
333 801 1 127 $status[0] == -1 and $Reader
802 127 0 $status[0] == -1 and $Reader and $reap == $gotchild
128 0 0 $status[0] == -1 and $Reader and $reap == $gotchild and @ret
346 921 0 8 $opt{'stdin'} && _reftype($opt{'stdin'}) ne 'SCALAR'
924 0 5 $opt{'stdout'} && _reftype($opt{'stdout'}) ne 'SCALAR'
925 0 4 $opt{'stderr'} && _reftype($opt{'stderr'}) ne 'SCALAR'
390 44 0 0 defined $IPC::Exe::_binmode_io and index($IPC::Exe::_binmode_io, ':') == 0
395 0 0 0 binmode *STDIN, $layer and binmode *STDOUT, $layer
418 4 0 0 NON_UNIX and _is_fh($EXE_GO)
447 0 0 1 not $is_sysopen and defined $args[0]
530 0 0 0 _is_fh($FH1) and _is_fh($FH2)
0 0 0 _is_fh($FH1) and _is_fh($FH2) and open $SWAP, '>&', $FH1
0 0 0 _is_fh($FH1) and _is_fh($FH2) and open $SWAP, '>&', $FH1 and open $FH1, '>&', $FH2
0 0 0 _is_fh($FH1) and _is_fh($FH2) and open $SWAP, '>&', $FH1 and open $FH1, '>&', $FH2 and open $FH2, '>&=', $SWAP
562 0 0 6 _is_fh($FH2) and open $FH1, $op, $FH2
580 40 0 0 NON_UNIX && _is_fh($EXE_GO)
588 0 0 0 carp('IPC::Exe::exe() failed to exec the command below', ' - ', $!, "\n ", _stringify_args(@cmd), "\n") and _quit(-1)
0 40 0 $restore_fh ? print($EXE_GO "exe_with_exec\n") : 1 and exec do { $cmd[0] } @cmd
629 0 0 0 defined $opt{'wait'} and $opt{'wait'} >= 0
707 0 0 0 $defined_grand and $gotgrand
770 0 0 0 $defined_child and $defined_grand
771 0 0 0 $defined_child and not $defined_grand
772 0 0 0 not $defined_child and $defined_grand
0 0 0 not $defined_child and $defined_grand and not $gotgrand

or 2 conditions

line l !l condition
50 0 4 shift() || 0

or 3 conditions

line l !l&&r !l&&!r condition
87 1 1 2 @bad_args or @bad_env
102 20 0 6 ('STDIN', 'STDOUT', 'STDERR')[$n] || "FH[$n]"
103 4 2 0 $$slots[$n] ||= gensym
150 2 12 1046 $IPC::Exe::_stdin || !!$opt{'stdin'}
208 517 517 0 defined $Preexec or @cmd_list
301 9 0 920 $IPC::Exe::_stdin or $opt{'stdout'}
9 0 920 $IPC::Exe::_stdin or $opt{'stdout'} or $opt{'stderr'}
310 737 0 192 $Reader or $opt{'stdout'}
319 128 104 697 $status[0] == -1 or $status[0] == 65280
325 167 5 60 $Reader || $opt{'stdout'}
60 0 0 $reap == $gotchild || $reap == -1 || $reap == 0
60 40 132 not $Reader || $opt{'stdout'} and $reap == $gotchild || $reap == -1 || $reap == 0 and $ret[0] = -1 or $reap == $gotchild
471 0 0 0 @args < 3 || @args > 4