Added tests for sanely persistent flash. Will re-commit when I know if they work...
[catagits/Catalyst-Plugin-Session.git] / t / lib / FlashTestApp.pm
1 #!/usr/bin/perl -w
2
3 package FlashTestApp;
4 use Catalyst qw/Session Session::Store::File Session::State::Cookie/;
5
6 use strict;
7 use warnings;
8
9 sub default : Private {
10     my ($self, $c) = @_;
11     $c->session;
12 }
13
14     
15 sub first : Global {
16     my ( $self, $c ) = @_;
17     if ( ! $c->flash->{is_set}) {
18         $c->stash->{message} = "flash is not set";
19         $c->stash->{is_set} = 1;
20     }
21 }
22
23 sub second : Global {
24     my ( $self, $c ) = @_;
25     if ($c->flash->{is_set} == 1){
26         $c->stash->{message} = "flash set first time";
27         $c->flash->{is_set}++;
28     }
29 }
30
31 sub third : Global {
32     my ( $self, $c ) = @_;
33     if ($c->flash->{is_set} == 2) {
34         $c->stash->{message} = "flash set second time";
35         $c->flash->{is_set} = 2;
36     }
37 }
38
39 sub fourth : Global {
40     my ( $self, $c ) = @_;
41     if ($c->flash->{is_set} == 2) {
42         $c->stash->{message} = "flash set 3rd time, same val as prev."
43     }
44 }
45
46 sub fifth : Global {
47     my ( $self, $c ) = @_;
48     $c->forward('/first');
49 }
50
51 sub end : Local {
52     my ($self, $c) = @_;
53     $c->res->output($c->stash->{message});
54 }
55
56
57 __PACKAGE__->setup;
58
59 __PACKAGE__;
60