View | Details | Raw Unified | Return to bug 40018
Collapse All | Expand All

(-)a/t/db_dependent/Koha/Template/Plugin/Koha.t (-9 / +13 lines)
Lines 17-26 Link Here
17
17
18
use Modern::Perl;
18
use Modern::Perl;
19
19
20
use Test::More tests => 2;
20
use Test::More tests => 3;
21
21
22
use Template::Context;
22
use Template::Context;
23
use Template::Stash;
23
use Template::Stash;
24
use Test::MockModule;
25
use Test::NoWarnings;
24
26
25
use C4::Auth;
27
use C4::Auth;
26
use Koha::Cache::Memory::Lite;
28
use Koha::Cache::Memory::Lite;
Lines 29-50 use Koha::Template::Plugin::Koha; Link Here
29
31
30
my $schema = Koha::Database->new->schema;
32
my $schema = Koha::Database->new->schema;
31
33
34
my $session_id  = 42;
35
my $cgi         = Test::MockModule->new('CGI');
36
my $cgi_session = Test::MockModule->new('CGI::Session');
37
$cgi_session->mock( 'load',  sub { return bless { id => $session_id }, 'CGI::Session' } );
38
$cgi_session->mock( 'new',   sub { return bless { id => $session_id }, 'CGI::Session' } );
39
$cgi_session->mock( 'param', sub { return $session_id } );
40
32
subtest 'GenerateCSRF() tests' => sub {
41
subtest 'GenerateCSRF() tests' => sub {
33
42
34
    plan tests => 1;
43
    plan tests => 1;
35
44
36
    $schema->storage->txn_begin;
45
    $schema->storage->txn_begin;
37
46
38
    my $session = C4::Auth::get_session('');
47
    my $stash   = Template::Stash->new( { sessionID => $session_id } );
39
40
    my $stash   = Template::Stash->new( { sessionID => $session->id } );
41
    my $context = Template::Context->new( { STASH => $stash } );
48
    my $context = Template::Context->new( { STASH => $stash } );
42
49
43
    my $plugin = Koha::Template::Plugin::Koha->new($context);
50
    my $plugin = Koha::Template::Plugin::Koha->new($context);
44
51
45
    my $token = $plugin->GenerateCSRF();
52
    my $token = $plugin->GenerateCSRF();
46
53
47
    ok( Koha::Token->new->check_csrf( { session_id => $session->id, token => $token } ) );
54
    ok( Koha::Token->new->check_csrf( { session_id => $session_id, token => $token } ) );
48
55
49
    $schema->storage->txn_rollback;
56
    $schema->storage->txn_rollback;
50
};
57
};
Lines 54-62 subtest 'GenerateCSRF - New CSRF token generated every time we need one' => sub Link Here
54
61
55
    $schema->storage->txn_begin;
62
    $schema->storage->txn_begin;
56
63
57
    my $session = C4::Auth::get_session('');
64
    my $stash   = Template::Stash->new( { sessionID => $session_id } );
58
59
    my $stash   = Template::Stash->new( { sessionID => $session->id } );
60
    my $context = Template::Context->new( { STASH => $stash } );
65
    my $context = Template::Context->new( { STASH => $stash } );
61
66
62
    my $plugin = Koha::Template::Plugin::Koha->new($context);
67
    my $plugin = Koha::Template::Plugin::Koha->new($context);
63
- 

Return to bug 40018