Branch Coverage

blib/lib/Raisin.pm
Criterion Covered Total %
branch 32 48 66.6


line true false branch
55 2 8 if $self->{'loaded_plugins'}{$name}
77 7 2 if $desc
84 124 4 unless $self->{'hooks'}{$name}
102 0 2 if $self->{'_loaded_middleware'}{$class}++
157 19 13 if ($self->can("swagger_build_spec"))
167 0 32 if (not $route and $self->{'allowed_methods'}{$req->path}) { }
0 32 elsif (not $route) { }
178 0 32 if (not $code or $code and ref $code ne "CODE")
190 0 32 unless ($req->prepare_params($route->params, $route->named))
200 32 0 if (defined $data)
202 0 32 if ref $data eq "CODE"
210 0 32 unless (my $ret = eval { do { $self->hook("before")->($self); my $route = $self->routes->find($req->method, $req->path); if (not $route and $self->{'allowed_methods'}{$req->path}) { $res->status(405); return $res->finalize; } elsif (not $route) { $res->status(404); return $res->finalize; } ; my $code = $route->code; if (not $code or $code and ref $code ne "CODE") { $self->log("error", "route ${\$req->path;} returns nothing or not CODE"); $res->status(500); $res->body("Internal error"); return $res->finalize; } ; $self->hook("before_validation")->($self); unless ($req->prepare_params($route->params, $route->named)) { $res->status(400); $res->body("Invalid Parameters"); return $res->finalize; } ; $self->hook("after_validation")->($self); my $data = &$code($req->declared_params); if (defined $data) { return $data if ref $data eq "CODE"; $res->body($data); } ; $self->hook("after")->($self); 1 } })
215 0 0 $ENV{'PLACK_ENV'} && $ENV{'PLACK_ENV'} eq 'deployment' ? :
221 0 32 if (ref $ret eq "CODE")
232 32 0 unless $self->res->status
235 0 32 if ($self->api_version)
250 3 9 if ($format)
254 6 6 unless $self->{'default_format'}
260 2 10 if ($format)
263 2 0 if (grep {lc $format eq $_;} @decoders) { }
277 3 37 if $version
284 33 5 if $req
290 34 143 if $res
297 0 0 unless ($self->req->env->{'psgix.session'})