blib/lib/Mojolicious/Static.pm | |||
---|---|---|---|
Criterion | Covered | Total | % |
condition | 42 | 47 | 89.3 |
line | !l | l&&!r | l&&r | condition |
---|---|---|---|---|
47 | 27 | 33 | 7 | $c->app->mode eq "development" and index($canon_path, $self->asset_dir) == 0 |
88 | 5 | 12 | 4 | $match and not grep({"W/$_" eq $etag unless $_ eq $etag;} map({trim($_);} split(/,/u, $match, 0))) |
91 | 10 | 1 | 6 | $last //= $res_headers->last_modified and $since |
121 | 1 | 4 | 10 | defined $2 && $2 < $size |
175 | 746 | 0 | 59 | -f $path && -r _ |
line | l | !l | condition |
---|---|---|---|
23 | 14 | 0 | $self->{'assets'} //= {} |
87 | 6 | 1 | $res_headers->etag // "" |
92 | 6 | 0 | _epoch($since) // 0 |
121 | 14 | 1 | $1 // 0 |
line | l | !l&&r | !l&&!r | condition |
---|---|---|---|---|
24 | 10 | 4 | 0 | $assets->{$asset} // $asset |
33 | 852 | 10 | 153 | $method eq "GET" or $method eq "HEAD" |
43 | 8 | 705 | 67 | $canon_path =~ m[^\.\./|\\]u or not $self->serve($c, $canon_path) |
84 | 6 | 15 | 76 | my $since = $req_headers->if_modified_since or $match |
87 | 14 | 6 | 1 | $etag //= $res_headers->etag // "" |
91 | 6 | 1 | 10 | $last //= $res_headers->last_modified |
153 | 205 | 41 | 0 | not exists $assets->{$short} or $checksum eq "development" |
164 | 643 | 3 | 95 | not $rel =~ /\.\w+$/u or $rel =~ /\.\w+\.\w+$/u |