c7258d9881081d2ef483a078bb00596cb50bb039
[catagits/Catalyst-Plugin-Session.git] / t / lib / SessionTestApp.pm
1 #!/usr/bin/perl
2
3 package SessionTestApp;
4 use Catalyst qw/Session Session::Store::Dummy Session::State::Cookie/;
5
6 use strict;
7 use warnings;
8
9 __PACKAGE__->config->{session} = {
10     # needed for live_verify_user_agent.t; should be harmless for other tests 
11     verify_user_agent => 1,  
12 };
13
14 sub login : Global {
15     my ( $self, $c ) = @_;
16     $c->session;
17     $c->res->output("logged in");
18 }
19
20 sub logout : Global {
21     my ( $self, $c ) = @_;
22     $c->res->output(
23         "logged out after " . $c->session->{counter} . " requests" );
24     $c->delete_session("logout");
25 }
26
27 sub page : Global {
28     my ( $self, $c ) = @_;
29     if ( $c->session_is_valid ) {
30         $c->res->output("you are logged in, session expires at " . $c->session_expires);
31         $c->session->{counter}++;
32     }
33     else {
34         $c->res->output("please login");
35     }
36 }
37
38 sub user_agent : Global {
39     my ( $self, $c ) = @_;
40     $c->res->output('UA=' . $c->req->user_agent);
41 }
42
43 __PACKAGE__->setup;
44
45 __PACKAGE__;
46