File Coverage

blib/lib/HTTP/Session2/Expired.pm
Criterion Covered Total %
statement 33 33 100.0
branch n/a
condition n/a
subroutine 10 10 100.0
pod 3 4 75.0
total 46 47 97.8


line stmt bran cond sub pod time code
1             package HTTP::Session2::Expired;
2 12     12   53455 use strict;
  12         32  
  12         287  
3 12     12   56 use warnings;
  12         18  
  12         253  
4 12     12   44 use utf8;
  12         18  
  12         47  
5 12     12   352 use 5.008_001;
  12         94  
6 12     12   53 use Carp ();
  12         25  
  12         254  
7 12     12   3911 use parent qw(HTTP::Session2::Base);
  12         2545  
  12         59  
8              
9 1     1 1 789 sub set { Carp::croak("You cannot set anything to expired session") }
10 1     1 1 216 sub get { Carp::croak("You cannot get anything from expired session") }
11 1     1 1 630 sub remove { Carp::croak("You cannot remove anything from expired session") }
12              
13             sub finalize {
14 6     6 0 13 my ($self) = @_;
15              
16 6         11 my @cookies;
17              
18             # Finalize session cookie
19             {
20 6         11 my %cookie = %{$self->session_cookie};
  6         45  
21 6         19 my $name = delete $cookie{name};
22 6         31 push @cookies, $name => +{
23             %cookie,
24             value => '',
25             expires => '-1d',
26             };
27             }
28              
29             # Finalize XSRF cookie
30             {
31 6         11 my %cookie = %{$self->xsrf_cookie};
  6         12  
  6         11  
  6         35  
32 6         16 my $name = delete $cookie{name};
33 6         29 push @cookies, $name => +{
34             %cookie,
35             value => '',
36             expires => '-1d',
37             };
38             }
39              
40 6         17 return @cookies;
41             }
42              
43             1;
44