Branch Coverage

blib/lib/IPC/Run3/Shell.pm
Criterion Covered Total %
branch 153 168 91.0


line true false branch
31 19 0 unless $DEBUG
33 1 0 unless $DEBUG
34 0 0 ref $DEBUG eq 'GLOB' ? :
41 6 6 if ref $v eq 'ARRAY'
42 0 6 if ref $v eq 'HASH'
43 0 6 if ref $v eq 'CODE'
62 0 14 if $IPC::Run3::Shell::DEBUG
92 2 29 if (not defined $exp) { }
10 19 elsif (not ref $exp and $exp and my($sym) = $exp =~ /^:(\w+)$/) { }
97 5 5 if ($sym eq 'run') { }
1 4 elsif ($sym eq 'AUTOLOAD') { }
1 3 elsif ($sym eq 'FATAL') { }
99 0 5 if $DEBUG
104 0 1 if $DEBUG
113 1 2 unless $EXPORTABLE{$sym}
115 0 2 if $DEBUG
121 13 6 ref $exp eq 'ARRAY' ? :
122 3 16 unless $sym
124 1 14 unless @cmd
125 0 14 if $DEBUG
135 1 63 if $omcmd[0] and $omcmd[0] eq 'IPC::Run3::Shell'
141 134 84 &blessed($acmd[0]) && $acmd[0]->isa($OBJECT_PACKAGE) ? :
150 45 173 if (exists $opt{'__TEST_OPT_A'} or exists $opt{'__TEST_OPT_B'})
153 33 1 defined $opt{'__TEST_OPT_A'} ? :
34 11 exists $opt{'__TEST_OPT_A'} ? :
40 1 defined $opt{'__TEST_OPT_B'} ? :
41 4 exists $opt{'__TEST_OPT_B'} ? :
158 3 138 unless $KNOWN_OPTS{$_}
160 16 156 if (defined $opt{'stdout_filter'})
162 2 14 unless ref $opt{'stdout_filter'} eq 'CODE'
163 20 150 defined $opt{'allow_exit'} ? :
164 166 4 if ($allow_exit ne 'ANY')
165 4 162 unless ref $allow_exit eq 'ARRAY'
166 1 165 unless @$allow_exit
170 4 1 defined $_ ? :
5 167 unless defined $_ and &looks_like_number($_)
179 1 8 if exists $opt{'stderr'} and $opt{'fail_on_stderr'}
181 1 14 if $opt{'both'} and exists $opt{'stdout'}
183 1 13 if $opt{'both'} and exists $opt{'stderr'}
185 1 12 if $opt{'both'} and $opt{'fail_on_stderr'}
188 1 163 unless @fcmd
194 20 135 if (exists $opt{'stdout'}) { }
12 123 elsif ($opt{'both'}) { }
14 109 elsif (wantarray) { }
65 44 elsif (defined wantarray) { }
197 11 1 defined wantarray ? :
206 7 148 if (exists $opt{'stderr'}) { }
9 139 elsif ($opt{'fail_on_stderr'}) { }
12 127 elsif ($opt{'both'}) { }
211 4 1 defined wantarray ? :
7 5 wantarray ? :
216 1 929 if exists $opt{$_}
218 0 155 if $DEBUG
219 1 4 ref $opt{'show_cmd'} eq 'GLOB' ? :
5 150 if $opt{'show_cmd'}
220 6 149 exists $opt{'irs'} ? :
222 1 154 unless IPC::Run3::run3(\@fcmd, $opt{'stdin'}, $stdout, $stderr, \%r3o)
226 5 4 if $opt{'fail_on_stderr'} and $err ne '' and $err ne $/
227 3 146 if ($? == -1) { }
4 142 elsif ($? & 127) { }
232 1 3 $? & 128 ? :
238 15 127 unless $allow_exit eq 'ANY' or grep {$_ == $exitcode;} @$allow_exit
240 32 102 unless defined wantarray
241 14 88 if (exists $opt{'stdout'}) { }
11 77 elsif ($opt{'both'}) { }
14 63 elsif (wantarray) { }
244 3 8 if $opt{'chomp'}
245 1 10 if ($opt{'stdout_filter'})
246 7 4 wantarray ? :
249 6 8 if $opt{'chomp'}
250 4 10 if ($opt{'stdout_filter'})
254 8 55 if $opt{'chomp'}
255 7 56 if ($opt{'stdout_filter'})
268 4 598 if (not defined $x) { }
9 589 elsif (&blessed($x) and overload::Overloaded($x)) { }
272 4 5 if (overload::Method($x, '""')) { }
2 3 elsif (defined(my $rv = eval { do { "$x" } })) { }
2 1 elsif ($@ =~ /\bno method found\b/) { }
286 0 2 if (not $overload::VERSION or $overload::VERSION < 1.04) { }
298 10 579 if ref $x
307 13 5 if $o
308 0 18 if (ref $c eq 'HASH') { }
314 18 0 defined $c ? :
315 6 12 if $s =~ m[[^\w\-\=/\.]]