Branch Coverage

blib/lib/Complete/File.pm
Criterion Covered Total %
branch 76 106 71.7


line true false branch
132 0 13 if ($handle_tilde and $word =~ s[\A(~[^/]*)/][]) { }
0 13 elsif ($allow_dot and $word =~ s[\A((?:\.\.?/+)+|/+)][]) { }
135 0 0 unless @dir
141 0 0 unless $starting_path =~ m[\A/]
145 0 13 if not $allow_dot and $word =~ m[(?:\A|/)\.\.?(?:\z|/)]
151 0 24 unless opendir my $dh, $path
155 20 186 if $_ eq '.' || $_ eq '..' and $intdir eq ''
156 28 158 if $isint and not -d "$path/$_"
166 2 11 if ($args{'filter'} and not ref $args{'filter'}) { }
1 20 elsif ($args{'filter'} and ref $args{'filter'} eq 'CODE') { }
170 0 6 unless my(@st) = stat $name
177 3 1 $_[0] ? :
4 7 if ($c eq '-') { }
0 7 elsif ($c eq 'r') { }
0 7 elsif ($c eq 'w') { }
0 7 elsif ($c eq 'x') { }
1 6 elsif ($c eq 'f') { }
6 0 elsif ($c eq 'd') { }
178 0 0 unless &$neg($mode & 256)
179 0 0 unless &$neg($mode & 128)
180 0 0 unless &$neg($mode & 64)
181 1 0 unless &$neg($mode & 32768)
182 3 3 unless &$neg($mode & 16384)
197 1 12 if ($args{'file_regex_filter'})
200 4 7 if -d $name
201 0 7 unless -f _
202 2 5 if $name =~ /$args{'file_regex_filter'}/
209 1 12 if ($args{'file_ext_filter'} and ref $args{'file_ext_filter'} eq 'Regexp') { }
1 22 elsif ($args{'file_ext_filter'} and ref $args{'file_ext_filter'} eq 'ARRAY') { }
212 0 3 if -d $name
213 0 3 unless -f _
214 3 0 $name =~ /\.(\w+)\z/ ? :
215 2 1 if $ext =~ /$args{'file_ext_filter'}/
221 0 3 if -d $name
222 0 3 unless -f _
223 3 0 $name =~ /\.(\w+)\z/ ? :
224 0 3 if ($Complete::Common::OPT_CI) { }
227 0 0 if $ext eq lc $e
231 2 3 if $ext eq $e
240 1 12 if ($args{'_dir'})
241 7 3 unless -d $_[0]
246 1 12 if ($args{'exclude_dir'})
247 2 1 if -d $_[0]
253 7 3 unless &$filter_dir($name)
10 60 if ($filter_dir)
254 2 1 unless &$filter_xdir($name)
3 60 if ($filter_xdir)
255 13 4 unless &$filter($name)
17 44 if ($filter)
256 5 6 unless &$filter_fregex($name)
11 37 if ($filter_fregex)
257 2 4 unless &$filter_fext($name)
6 37 if ($filter_fext)