|
Lines 17-23
Link Here
|
| 17 |
|
17 |
|
| 18 |
use Modern::Perl; |
18 |
use Modern::Perl; |
| 19 |
|
19 |
|
| 20 |
use Test::More tests => 108; |
20 |
use Test::More tests => 120; |
| 21 |
use Test::MockModule; |
21 |
use Test::MockModule; |
| 22 |
use Test::Mojo; |
22 |
use Test::Mojo; |
| 23 |
use t::lib::Mocks; |
23 |
use t::lib::Mocks; |
|
Lines 61-71
my $patron_id = $patron->borrowernumber;
Link Here
|
| 61 |
|
61 |
|
| 62 |
my $branchcode = $builder->build({ source => 'Branch' })->{ branchcode }; |
62 |
my $branchcode = $builder->build({ source => 'Branch' })->{ branchcode }; |
| 63 |
|
63 |
|
|
|
64 |
$t->get_ok( "//$userid:$password@/api/v1/checkouts/count?patron_id=$patron_id" ) |
| 65 |
->status_is(200) |
| 66 |
->json_is('/count' => 0); |
| 67 |
|
| 64 |
$t->get_ok( "//$userid:$password@/api/v1/checkouts?patron_id=$patron_id" ) |
68 |
$t->get_ok( "//$userid:$password@/api/v1/checkouts?patron_id=$patron_id" ) |
| 65 |
->status_is(200) |
69 |
->status_is(200) |
| 66 |
->json_is([]); |
70 |
->json_is([]); |
| 67 |
|
71 |
|
| 68 |
my $notexisting_patron_id = $patron_id + 1; |
72 |
my $notexisting_patron_id = $patron_id + 1; |
|
|
73 |
$t->get_ok( "//$userid:$password@/api/v1/checkouts/count?patron_id=$notexisting_patron_id" ) |
| 74 |
->status_is(200) |
| 75 |
->json_is('/count' => 0); |
| 76 |
|
| 69 |
$t->get_ok( "//$userid:$password@/api/v1/checkouts?patron_id=$notexisting_patron_id" ) |
77 |
$t->get_ok( "//$userid:$password@/api/v1/checkouts?patron_id=$notexisting_patron_id" ) |
| 70 |
->status_is(200) |
78 |
->status_is(200) |
| 71 |
->json_is([]); |
79 |
->json_is([]); |
|
Lines 120-125
my $date_due3 = Koha::DateUtils::dt_from_string( $issue3->date_due );
Link Here
|
| 120 |
my $issue4 = C4::Circulation::AddIssue($patron, $item4->barcode); |
128 |
my $issue4 = C4::Circulation::AddIssue($patron, $item4->barcode); |
| 121 |
C4::Circulation::AddReturn($item4->barcode, $branchcode); |
129 |
C4::Circulation::AddReturn($item4->barcode, $branchcode); |
| 122 |
|
130 |
|
|
|
131 |
$t->get_ok( "//$userid:$password@/api/v1/checkouts/count?patron_id=$patron_id" ) |
| 132 |
->status_is(200) |
| 133 |
->json_is('/count' => 2); |
| 134 |
|
| 123 |
$t->get_ok( "//$userid:$password@/api/v1/checkouts?patron_id=$patron_id" ) |
135 |
$t->get_ok( "//$userid:$password@/api/v1/checkouts?patron_id=$patron_id" ) |
| 124 |
->status_is(200) |
136 |
->status_is(200) |
| 125 |
->json_is('/0/patron_id' => $patron_id) |
137 |
->json_is('/0/patron_id' => $patron_id) |
|
Lines 160-165
$t->get_ok( "//$unauth_userid:$unauth_password@/api/v1/checkouts/" . $issue3->is
Link Here
|
| 160 |
required_permissions => { circulate => "circulate_remaining_permissions" } |
172 |
required_permissions => { circulate => "circulate_remaining_permissions" } |
| 161 |
}); |
173 |
}); |
| 162 |
|
174 |
|
|
|
175 |
$t->get_ok( "//$unauth_userid:$unauth_password@/api/v1/checkouts/count?patron_id=$patron_id") |
| 176 |
->status_is(403)->json_is({ |
| 177 |
error => "Authorization failure. Missing required permission(s).", |
| 178 |
required_permissions => [{"circulate" => "circulate_remaining_permissions"}, {"circulate" => "manage_bookings"}] |
| 179 |
}); |
| 180 |
|
| 163 |
$t->get_ok( "//$userid:$password@/api/v1/checkouts?patron_id=$patron_id") |
181 |
$t->get_ok( "//$userid:$password@/api/v1/checkouts?patron_id=$patron_id") |
| 164 |
->status_is(200) |
182 |
->status_is(200) |
| 165 |
->json_is('/0/patron_id' => $patron_id) |
183 |
->json_is('/0/patron_id' => $patron_id) |
| 166 |
- |
|
|