File Coverage

blib/lib/Plack/Client/Backend.pm
Criterion Covered Total %
statement 21 23 91.3
branch n/a
condition n/a
subroutine 9 11 81.8
pod 3 3 100.0
total 33 37 89.1


line stmt bran cond sub pod time code
1             package Plack::Client::Backend;
2             BEGIN {
3 4     4   100 $Plack::Client::Backend::VERSION = '0.06';
4             }
5 4     4   49 use strict;
  4         11  
  4         224  
6 4     4   24 use warnings;
  4         18  
  4         372  
7             # ABSTRACT: turns a Plack::Request into a PSGI app
8              
9 4     4   33 use Carp;
  4         1652  
  4         605  
10 4     4   26 use Scalar::Util qw(weaken);
  4         7  
  4         538  
11              
12 4     4   26 use overload '&{}' => sub { shift->as_code(@_) }, fallback => 1;
  4     0   17  
  4         56  
  0         0  
13              
14              
15              
16             sub new {
17 8     8 1 22 my $class = shift;
18 8         37 bless {}, $class;
19             }
20              
21              
22             sub app_from_request {
23 0     0 1 0 croak "Backends must implement app_from_request";
24             }
25              
26              
27             sub as_code {
28 8     8 1 17 my $self = shift;
29 8     76   80 return sub { $self->app_from_request(@_) };
  76         501  
30             }
31              
32             1;
33              
34             __END__