Commit | Line | Data |
a2e23c04 |
1 | #!/usr/bin/env perl |
2 | |
3 | use strict; |
4 | use warnings; |
5 | use Test::More; |
6 | use HTTP::Request::Common; |
7 | |
8 | # setup library path |
9 | use FindBin qw($Bin); |
10 | use lib "$Bin/lib"; |
11 | |
f851ba4e |
12 | BEGIN { |
13 | plan skip_all => "Need Catalyst::Plugin::Session::State::Cookie" |
14 | unless do { local $@; eval { require Catalyst::Plugin::Session::State::Cookie; } }; |
15 | } |
16 | |
a2e23c04 |
17 | use Catalyst::Test 'SessionTestApp'; |
18 | my ($res, $c); |
19 | |
20 | ($res, $c) = ctx_request(POST 'http://localhost/login', [username => 'bob', password => 's00p3r', remember => 1]); |
21 | is($res->code, 200, 'succeeded'); |
22 | my $cookie = $res->header('Set-Cookie'); |
23 | ok($cookie, 'Have a cookie'); |
24 | |
25 | # this checks that cookie persists across a redirect |
601be17a |
26 | ($res, $c) = ctx_request(GET 'http://localhost/do_redirect', Cookie => $cookie); |
27 | is($res->code, 302, 'redirected'); |
28 | is($res->header('Location'), 'http://localhost/page', 'Redirected after do_redirect'); |
29 | ok($res->header('Set-Cookie'), 'Cookie is still there after redirect'); |
a2e23c04 |
30 | |
31 | done_testing; |