nasty hack
[catagits/Catalyst-Plugin-Session.git] / t / 05_semi_persistent_flash.t
1 #!/usr/bin/perl -w
2 use strict;
3
4 use Test::More;
5
6 BEGIN {
7     eval { require Catalyst::Plugin::Session::State::Cookie; Catalyst::Plugin::Session::State::Cookie->VERSION(0.03) }
8         or plan skip_all =>
9             "Catalyst::Plugin::Session::State::Cookie version 0.03 or higher is required for this test";
10
11     eval { require Test::WWW::Mechanize::Catalyst }
12       or plan skip_all =>
13       'Test::WWW::Mechanize::Catalyst is required for this test';
14
15     plan tests => '10';
16
17 }
18
19 use lib "t/lib";
20 use Test::WWW::Mechanize::Catalyst 'FlashTestApp';
21
22 my $ua = Test::WWW::Mechanize::Catalyst->new;
23
24 # flash absent for initial request
25 $ua->get_ok( "http://localhost/first");
26 $ua->content_contains( "flash is not set", "not set");
27
28 # present for 1st req.
29 $ua->get_ok( "http://localhost/second");
30 $ua->content_contains( "flash set first time", "set first");
31
32 # should be the same 2nd req.
33 $ua->get_ok( "http://localhost/third");
34 $ua->content_contains( "flash set second time", "set second");
35
36 # and the third request, flash->{is_set} has the same value as 2nd.
37 $ua->get_ok( "http://localhost/fourth");
38 $ua->content_contains( "flash set 3rd time, same val as prev.", "set third");
39
40
41 # and should be absent again for the 4th req.
42 $ua->get_ok( "http://localhost/fifth");
43 $ua->content_contains( "flash is not", "flash has gone");
44