|
Lines 159-165
my $post_data = {
Link Here
|
| 159 |
biblio_id => $biblio_1->biblionumber, |
159 |
biblio_id => $biblio_1->biblionumber, |
| 160 |
item_id => $item_1->itemnumber, |
160 |
item_id => $item_1->itemnumber, |
| 161 |
pickup_library_id => $branchcode, |
161 |
pickup_library_id => $branchcode, |
| 162 |
expiration_date => output_pref( { dt => $expiration_date, dateformat => 'rfc3339', dateonly => 1 } ), |
162 |
expiration_date => output_pref( { dt => $expiration_date, dateformat => 'rfc3339' } ), |
| 163 |
}; |
163 |
}; |
| 164 |
my $patch_data = { |
164 |
my $patch_data = { |
| 165 |
priority => 2, |
165 |
priority => 2, |
|
Lines 254-260
subtest "Test endpoints with permission" => sub {
Link Here
|
| 254 |
$t->get_ok( "//$userid_1:$password@/api/v1/holds?patron_id=" . $patron_1->borrowernumber ) |
254 |
$t->get_ok( "//$userid_1:$password@/api/v1/holds?patron_id=" . $patron_1->borrowernumber ) |
| 255 |
->status_is(200) |
255 |
->status_is(200) |
| 256 |
->json_is('/0/hold_id', $reserve_id) |
256 |
->json_is('/0/hold_id', $reserve_id) |
| 257 |
->json_is('/0/expiration_date', output_pref({ dt => $expiration_date, dateformat => 'rfc3339', dateonly => 1 })) |
257 |
->json_is('/0/expiration_date', output_pref({ dt => $expiration_date, dateformat => 'rfc3339' })) |
| 258 |
->json_is('/0/pickup_library_id', $branchcode); |
258 |
->json_is('/0/pickup_library_id', $branchcode); |
| 259 |
|
259 |
|
| 260 |
$t->post_ok( "//$userid_3:$password@/api/v1/holds" => json => $post_data ) |
260 |
$t->post_ok( "//$userid_3:$password@/api/v1/holds" => json => $post_data ) |
|
Lines 322-336
subtest 'test AllowHoldDateInFuture' => sub {
Link Here
|
| 322 |
|
322 |
|
| 323 |
$dbh->do('DELETE FROM reserves'); |
323 |
$dbh->do('DELETE FROM reserves'); |
| 324 |
|
324 |
|
| 325 |
my $future_hold_date = DateTime->now->add(days => 10)->truncate( to => 'day' ); |
325 |
my $future_hold_date = DateTime->now->add(days => 10); |
| 326 |
|
326 |
|
| 327 |
my $post_data = { |
327 |
my $post_data = { |
| 328 |
patron_id => $patron_1->borrowernumber, |
328 |
patron_id => $patron_1->borrowernumber, |
| 329 |
biblio_id => $biblio_1->biblionumber, |
329 |
biblio_id => $biblio_1->biblionumber, |
| 330 |
item_id => $item_1->itemnumber, |
330 |
item_id => $item_1->itemnumber, |
| 331 |
pickup_library_id => $branchcode, |
331 |
pickup_library_id => $branchcode, |
| 332 |
expiration_date => output_pref( { dt => $expiration_date, dateformat => 'rfc3339', dateonly => 1 } ), |
332 |
expiration_date => output_pref( { dt => $expiration_date, dateformat => 'rfc3339' } ), |
| 333 |
hold_date => output_pref( { dt => $future_hold_date, dateformat => 'rfc3339', dateonly => 1 } ), |
333 |
hold_date => output_pref( { dt => $future_hold_date, dateformat => 'rfc3339' } ), |
| 334 |
}; |
334 |
}; |
| 335 |
|
335 |
|
| 336 |
t::lib::Mocks::mock_preference( 'AllowHoldDateInFuture', 0 ); |
336 |
t::lib::Mocks::mock_preference( 'AllowHoldDateInFuture', 0 ); |
|
Lines 340-345
subtest 'test AllowHoldDateInFuture' => sub {
Link Here
|
| 340 |
->json_has('/error'); |
340 |
->json_has('/error'); |
| 341 |
|
341 |
|
| 342 |
t::lib::Mocks::mock_preference( 'AllowHoldDateInFuture', 1 ); |
342 |
t::lib::Mocks::mock_preference( 'AllowHoldDateInFuture', 1 ); |
|
|
343 |
t::lib::Mocks::mock_preference( 'HourBasedHolds', 1 ); |
| 344 |
t::lib::Mocks::mock_preference( 'dateformat', 'rfc3339' ); |
| 343 |
|
345 |
|
| 344 |
# Make sure pickup location checks doesn't get in the middle |
346 |
# Make sure pickup location checks doesn't get in the middle |
| 345 |
my $mock_biblio = Test::MockModule->new('Koha::Biblio'); |
347 |
my $mock_biblio = Test::MockModule->new('Koha::Biblio'); |
|
Lines 349-355
subtest 'test AllowHoldDateInFuture' => sub {
Link Here
|
| 349 |
|
351 |
|
| 350 |
$t->post_ok( "//$userid_3:$password@/api/v1/holds" => json => $post_data ) |
352 |
$t->post_ok( "//$userid_3:$password@/api/v1/holds" => json => $post_data ) |
| 351 |
->status_is(201) |
353 |
->status_is(201) |
| 352 |
->json_is('/hold_date', output_pref({ dt => $future_hold_date, dateformat => 'rfc3339', dateonly => 1 })); |
354 |
->json_is('/hold_date', output_pref({ dt => $future_hold_date, dateformat => 'rfc3339' })); |
| 353 |
}; |
355 |
}; |
| 354 |
|
356 |
|
| 355 |
$schema->storage->txn_rollback; |
357 |
$schema->storage->txn_rollback; |
| 356 |
- |
|
|