use strict;
use warnings;
-use Test::More tests => 15;
+use Test::More tests => 10;
use Test::MockObject;
use Test::MockObject::Extends;
$cxt->config->{session}{cookie_name} = "session";
-can_ok( $m, "prepare_cookies" );
+can_ok( $m, "get_session_id" );
-$cxt->prepare_cookies;
-ok( !$cxt->called("sessionid"),
- "didn't try setting session ID when there was nothing to set it by" );
+ok( !$cxt->get_session_id, "no session id yet");
$cxt->clear;
%req_cookies = ( session => $cookie );
-ok( !$cxt->sessionid, "no session ID yet" );
-$cxt->prepare_cookies;
-is( $cxt->sessionid, "the session id", "session ID was restored from cookie" );
+is( $cxt->get_session_id, "the session id", "session ID was restored from cookie" );
$cxt->clear;
$res->clear;
-can_ok( $m, "finalize_cookies" );
-$cxt->finalize_cookies;
-{
- local $TODO =
- "This check is a pain to write, should be done by catalyst itself";
- ok( !$res->called("cookies"),
- "response cookie was not set since res cookie is already there" );
-}
+can_ok( $m, "set_session_id" );
+$cxt->set_session_id("moose");
-$cxt->clear;
-$sessionid = undef;
-$res->clear;
-
-$cxt->finalize_cookies;
-ok( !$res->called("cookies"),
-"response cookie was not set when sessionid was deleted, even if req cookie is still there"
-);
+$res->called_ok( "cookies", "created a cookie on set" );
-$sessionid = "some other ID";
$cxt->clear;
$res->clear;
-$cxt->finalize_cookies;
-$res->called_ok( "cookies", "response cookie was set when sessionid changed" );
-is_deeply(
- \%res_cookies,
- { session => { value => $sessionid, expires => 123 } },
- "cookie was set correctly"
-);
+$cxt->set_session_id($sessionid);
-$cxt->clear;
-$res->clear;
-%req_cookies = ();
-%res_cookies = ();
-$sessionid = undef;
-
-$cxt->finalize_cookies;
-ok( !$res->called("cookies"),
- "response cookie was not set when there is no sessionid or request cookie"
-);
-
-$cxt->clear;
-$sessionid = "123";
-%res_cookies = ();
-$res->clear;
-
-$cxt->finalize_cookies;
-
-$res->called_ok( "cookies",
- "response cookie was set when session was created" );
+$res->called_ok( "cookies", "response cookie was set when sessionid changed" );
is_deeply(
\%res_cookies,
{ session => { value => $sessionid, expires => 123 } },
"cookie was set correctly"
);
-