Lines 19-29
Link Here
|
19 |
|
19 |
|
20 |
use Modern::Perl; |
20 |
use Modern::Perl; |
21 |
|
21 |
|
22 |
use Test::More tests => 20; |
22 |
use Test::More tests => 38; |
23 |
use Test::Mojo; |
23 |
use Test::Mojo; |
24 |
|
24 |
|
25 |
use t::lib::TestBuilder; |
25 |
use t::lib::TestBuilder; |
26 |
|
26 |
|
|
|
27 |
use C4::Auth; |
27 |
use C4::Context; |
28 |
use C4::Context; |
28 |
use Koha::AuthUtils; |
29 |
use Koha::AuthUtils; |
29 |
|
30 |
|
Lines 85-90
$t->request_ok($tx)
Link Here
|
85 |
->json_is('/borrowernumber', $borrower->{borrowernumber}) |
86 |
->json_is('/borrowernumber', $borrower->{borrowernumber}) |
86 |
->json_is('/email', $borrower->{email}) |
87 |
->json_is('/email', $borrower->{email}) |
87 |
->json_has('/sessionid'); |
88 |
->json_has('/sessionid'); |
|
|
89 |
my $sessionid = $tx->res->json->{sessionid}; |
88 |
|
90 |
|
89 |
$tx = $t->ua->build_tx(POST => '/api/v1/auth/session' => form => $invalid_login); |
91 |
$tx = $t->ua->build_tx(POST => '/api/v1/auth/session' => form => $invalid_login); |
90 |
$tx->req->env({REMOTE_ADDR => '127.0.0.1'}); |
92 |
$tx->req->env({REMOTE_ADDR => '127.0.0.1'}); |
Lines 98-101
$t->request_ok($tx)
Link Here
|
98 |
->status_is(401) |
100 |
->status_is(401) |
99 |
->json_is('/error', "Login failed."); |
101 |
->json_is('/error', "Login failed."); |
100 |
|
102 |
|
|
|
103 |
$tx = $t->ua->build_tx(DELETE => '/api/v1/auth/session' => json => { sessionid => $sessionid."123" }); |
104 |
$tx->req->env({REMOTE_ADDR => '127.0.0.1'}); |
105 |
$t->request_ok($tx) |
106 |
->status_is(401) |
107 |
->json_is('/error', "Invalid session id."); |
108 |
|
109 |
my ($sess_status, $sid) = C4::Auth::check_cookie_auth($sessionid); |
110 |
is($sess_status, "ok", "Session is valid before logging out."); |
111 |
$tx = $t->ua->build_tx(DELETE => '/api/v1/auth/session' => json => { sessionid => $sessionid }); |
112 |
$tx->req->env({REMOTE_ADDR => '127.0.0.1'}); |
113 |
$t->request_ok($tx) |
114 |
->status_is(200); |
115 |
|
116 |
($sess_status, $sid) = C4::Auth::check_cookie_auth($sessionid); |
117 |
isnt($sess_status, "ok", "Session is not valid after logging out."); |
118 |
|
119 |
$tx = $t->ua->build_tx(POST => '/api/v1/auth/session' => form => $auth_by_cardnumber); |
120 |
$tx->req->env({REMOTE_ADDR => '127.0.0.1'}); |
121 |
$t->request_ok($tx) |
122 |
->status_is(201) |
123 |
->json_is('/firstname', $borrower->{firstname}) |
124 |
->json_is('/surname', $borrower->{surname}) |
125 |
->json_is('/borrowernumber', $borrower->{borrowernumber}) |
126 |
->json_is('/email', $borrower->{email}) |
127 |
->json_has('/sessionid'); |
128 |
$sessionid = $tx->res->json->{sessionid}; |
129 |
|
130 |
($sess_status, $sid) = C4::Auth::check_cookie_auth($sessionid); |
131 |
is($sess_status, "ok", "Session is valid before logging out."); |
132 |
$tx = $t->ua->build_tx(DELETE => '/api/v1/auth/session'); |
133 |
$tx->req->env({REMOTE_ADDR => '127.0.0.1'}); |
134 |
$t->request_ok($tx) |
135 |
->status_is(200); |
136 |
|
137 |
($sess_status, $sid) = C4::Auth::check_cookie_auth($sessionid); |
138 |
isnt($sess_status, "ok", "Session is not valid after logging out."); |
139 |
|
101 |
$dbh->rollback; |
140 |
$dbh->rollback; |
102 |
- |
|
|