Branch Coverage

lib/PAGI/Middleware/Static.pm
Criterion Covered Total %
branch 51 64 79.6


line true false branch
183 1 22 if ($scope->{'type'} ne "http" or $scope->{'method'} ne "GET" and $scope->{'method'} ne "HEAD")
192 20 2 if (ref $path_match eq 'Regexp') { }
2 0 elsif (ref $path_match eq 'CODE') { }
193 0 20 unless ($path =~ /$path_match/)
199 0 2 unless ($result)
203 1 1 if (defined $result and not ref $result and $result ne 1)
209 1 21 if (defined $path and $path ne "" and not $path =~ m[^/])
217 1 21 unless ($file_path and $self->_is_safe_path($file_path))
223 4 17 unless (-e $file_path)
224 1 3 if ($self->{'pass_through'})
233 1 16 if (-d $file_path)
235 1 0 if ($index_file) { }
238 0 0 if ($self->{'pass_through'})
249 0 17 unless (@stat)
262 1 16 if ($if_none_match and $if_none_match eq $etag)
282 15 1 $self->{'handle_ranges'} ? :
285 1 15 if ($is_range and not defined $start)
302 4 11 if ($is_range) { }
321 1 14 if ($scope->{'method'} eq "HEAD")
332 4 10 if ($is_range) { }
371 0 22 unless defined $abs_path
391 23 163 if ($part eq '' or $part eq '.') { }
3 160 elsif ($part eq '..') { }
396 3 0 if (@resolved)
414 1 0 if -f $index_path
439 6 6 if lc $h->[0] eq $name
447 11 5 unless $range_header
450 5 0 if ($range_header =~ /^bytes=(\d*)-(\d*)$/)
453 1 4 if ($start eq '' and $end ne '') { }
0 4 elsif ($start ne '' and $end eq '') { }
467 1 4 if $start > $end or $start >= $size
469 0 4 if $end >= $size