Branch Coverage

blib/lib/Getopt/App.pm
Criterion Covered Total %
branch 89 112 79.4


line true false branch
29 0 1 unless open my $SCRIPT, "<", $script
31 0 2 if ($line =~ /\bDEBUG\b/u) { }
1 1 elsif ($line =~ /^\s*package\s+\S+\s*;/u) { }
1 0 elsif ($. == 1) { }
39 1 0 if ($line =~ /^#!/u) { }
43 0 0 if $line =~ /^[^#]+;/u
48 0 1 unless open my $SELF, "<", __FILE__
50 52 232 if $line =~ /(?:\bVERSION\s|^\s*$)/u
51 46 186 if $line =~ /^sub bundle\s\{/u .. $line =~ /^}$/u
52 1 185 if $line =~ /^1;\s*$/u
55 15 170 if ($line =~ /^sub\s/u) { }
13 157 elsif ($line =~ /^}$/u) { }
56 1 14 if $out_line
57 2 13 $line =~ /\}$/u ? :
81 0 25 unless open my $STDOUT_ORIG, ">&STDOUT"
82 0 25 unless open my $STDERR_ORIG, ">&STDERR"
85 0 25 unless open STDERR, ">&", fileno $STDERR_ORIG
86 0 25 unless open STDOUT, ">&", fileno $STDOUT_ORIG
87 0 25 if $_[0]
90 0 25 unless open STDOUT, ">&", fileno $STDOUT_CAPTURE
91 0 25 unless open STDERR, ">&", fileno $STDERR_CAPTURE
94 4 21 unless (eval { do { $exit_value = &$app($argv || [@ARGV]); 1 } })
112 1 3 if $pod2usage{'-sections'}
120 1 3 if $pod2usage{'-sections'}
133 0 7 if ref $subcommand->[1] eq "CODE"
138 1 6 if $method
141 1 5 unless my $code = do $subcommand->[1]
147 0 23 unless $state->{'valid'}
148 22 1 unless $argv->[0] and $argv->[0] =~ /^-/u
169 6 4 if ($flag eq '-capture') { }
2 2 elsif ($flag eq '-complete') { }
0 2 elsif ($flag eq '-signatures') { }
2 0 elsif (not $flag =~ /^-/u) { }
182 1 1 if $caller eq "main"
183 0 1 unless eval "require $flag;1"
188 13 6 unless ($skip_default)
189 13 0 unless $caller->can("extract_usage")
190 13 0 unless $caller->can("new")
197 1 1 @_ > 1 ? :
2 49 @_ ? :
203 0 12 unless defined wantarray
210 8 25 unless $exit_value and $exit_value =~ /^\d{1,3}$/u
211 2 31 unless $exit_value < 255
221 10 39 if defined $ENV{'COMP_POINT'} and defined $ENV{'COMP_LINE'}
225 19 20 $SUBCOMMANDS ? :
226 9 26 if defined $exit_value
232 25 1 &Getopt::Long::GetOptionsFromArray($argv, $app, @$option_spec) ? :
235 23 1 $valid ? :
240 5 14 unless $argv->[0] and $argv->[0] =~ /^\w/u
244 4 10 unless $SUBCOMMAND = &first(sub { $_->[0] eq $argv->[0]; } , @$subcommands)
247 0 9 unless ref $cb eq "CODE"
253 1 3 unless @$option_spec
259 7 4 length $_ == 1 ? :
263 4 5 if $l > $len
272 3 1 unless @$subcommands
277 4 2 if $l > $len