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 => 'iso', dateonly => 1 } ), |
162 |
expiration_date => output_pref( { dt => $expiration_date, dateformat => 'iso' } ), |
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 => 'iso', dateonly => 1 })) |
257 |
->json_is('/0/expiration_date', output_pref({ dt => $expiration_date, dateformat => 'iso' })) |
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 => 'iso', dateonly => 1 } ), |
332 |
expiration_date => output_pref( { dt => $expiration_date, dateformat => 'iso' } ), |
333 |
hold_date => output_pref( { dt => $future_hold_date, dateformat => 'iso', dateonly => 1 } ), |
333 |
hold_date => output_pref( { dt => $future_hold_date, dateformat => 'iso' } ), |
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 => 'iso', dateonly => 1 })); |
354 |
->json_is('/hold_date', output_pref({ dt => $future_hold_date, dateformat => 'iso' })); |
353 |
}; |
355 |
}; |
354 |
|
356 |
|
355 |
$schema->storage->txn_rollback; |
357 |
$schema->storage->txn_rollback; |
356 |
- |
|
|