File: session_yaml_object.t

package info (click to toggle)
libdancer2-perl 0.400001%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 2,580 kB
  • sloc: perl: 8,461; makefile: 9
file content (28 lines) | stat: -rw-r--r-- 881 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
use strict;
use warnings;

use Dancer2::Session::YAML ();
use File::Temp ();
use IO::File ();

use Test::More;

my $tempdir = File::Temp->newdir;

my $engine = Dancer2::Session::YAML->new( session_dir => $tempdir->dirname );
my $session_id = do {
    my $session = $engine->create;
    isa_ok $session, 'Dancer2::Core::Session', 'Create a session';
    ok $session->write( uvw => 7 ), 'Store a session value';
    ok $session->write( xyz => $tempdir ), 'Store a session object';
    ok $engine->flush( session => $session ), 'Flush the session store';
    $session->id;
};
{
    my $session = $engine->retrieve( id => $session_id );
    isa_ok $session, 'Dancer2::Core::Session', 'Retrieve the session';
    is $session->read('uvw'), 7, 'The session has stored the value';
    isa_ok $session->read('xyz'),'File::Temp::Dir', 'The session has stored the object';
}

done_testing();