From: Yuval Kogman Date: Thu, 29 Dec 2005 08:55:32 +0000 (+0000) Subject: Fixed C::P::Session::State::Cookie expires behavior X-Git-Tag: v0.02~1 X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=catagits%2FCatalyst-Plugin-Session-State-Cookie.git;a=commitdiff_plain;h=74586782a63bf750618a42e0a5d5ea1549a65ede Fixed C::P::Session::State::Cookie expires behavior --- diff --git a/lib/Catalyst/Plugin/Session/State/Cookie.pm b/lib/Catalyst/Plugin/Session/State/Cookie.pm index 23402db..b65430f 100644 --- a/lib/Catalyst/Plugin/Session/State/Cookie.pm +++ b/lib/Catalyst/Plugin/Session/State/Cookie.pm @@ -5,6 +5,7 @@ use strict; use warnings; use NEXT; +use Catalyst::Utils (); our $VERSION = "0.02"; @@ -50,8 +51,7 @@ sub make_session_cookie { } } else { - # XXX: FIXME, Session dropped __expires - $cookie->{expires} = $c->session->{__expires}; + $cookie->{expires} = $c->session_expires; } return $cookie; diff --git a/t/basic.t b/t/basic.t index 66711dd..52cba05 100644 --- a/t/basic.t +++ b/t/basic.t @@ -27,7 +27,8 @@ my $cxt = $cxt->set_always( config => {} ); $cxt->set_always( request => $req ); $cxt->set_always( response => $res ); -$cxt->set_always( session => { __expires => 123 } ); +$cxt->set_always( session => { } ); +$cxt->set_always( session_expires => 123 ); $cxt->set_false("debug"); my $sessionid; $cxt->mock( sessionid => sub { shift; $sessionid = shift if @_; $sessionid } ); @@ -36,8 +37,10 @@ can_ok( $m, "setup_session" ); $cxt->setup_session; -is( $cxt->config->{session}{cookie_name}, - "session", "default cookie name is set" ); +like( $cxt->config->{session}{cookie_name}, + qr/_session$/, "default cookie name is set" ); + +$cxt->config->{session}{cookie_name} = "session"; can_ok( $m, "prepare_cookies" ); diff --git a/t/live_app.t b/t/live_app.t index db8afdb..ac1fc59 100644 --- a/t/live_app.t +++ b/t/live_app.t @@ -53,7 +53,7 @@ $m->content_contains( "hit number 2", "session data restored" ); $m->get_ok( "http://foo.com/stream", "get stream" ); $m->content_contains( "hit number 3", "session data restored" ); -sleep 1; +sleep 2; $m->get_ok( "http://foo.com/page", "get stream" ); $m->content_contains( "hit number 4", "session data restored" );