File Coverage

blib/lib/Plack/Middleware/Conditional.pm
Criterion Covered Total %
statement 14 14 100.0
branch 2 2 100.0
condition n/a
subroutine 5 5 100.0
pod 2 2 100.0
total 23 23 100.0


line stmt bran cond sub pod time code
1             package Plack::Middleware::Conditional;
2 30     30   177 use strict;
  30         48  
  30         886  
3 30     30   125 use parent qw(Plack::Middleware);
  30         49  
  30         132  
4              
5 30     30   1166 use Plack::Util::Accessor qw( condition middleware builder );
  30         59  
  30         95  
6              
7             sub prepare_app {
8 5     5 1 70 my $self = shift;
9 5         24 $self->middleware( $self->builder->($self->app) );
10             }
11              
12             sub call {
13 13     13 1 25 my($self, $env) = @_;
14              
15 13 100       42 my $app = $self->condition->($env) ? $self->middleware : $self->app;
16 13         34 return $app->($env);
17             }
18              
19             1;
20              
21             __END__