Bug 24860: (QA follow-up) Add unit tests to cover Koha::REST::V1::Holds::add

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
This commit is contained in:
Kyle Hall 2022-10-12 13:29:48 -04:00 committed by Tomas Cohen Arazi
parent b77084a3f7
commit 114bb8b87e
No known key found for this signature in database
GPG Key ID: 0A272EA1B2F3C15F
1 changed files with 32 additions and 1 deletions

View File

@ -1097,7 +1097,7 @@ subtest 'edit() tests' => sub {
subtest 'add() tests' => sub {
plan tests => 16;
plan tests => 21;
$schema->storage->txn_begin;
@ -1178,6 +1178,37 @@ subtest 'add() tests' => sub {
pickup_library_id => $library_1->branchcode,
};
$t->post_ok( "//$userid:$password@/api/v1/holds" => json => $biblio_hold_data )
->status_is(400)
->json_is({ error => 'The supplied pickup location is not valid' });
$biblio_hold_data->{pickup_library_id} = $library_2->branchcode;
$t->post_ok( "//$userid:$password@/api/v1/holds" => json => $biblio_hold_data )
->status_is(201);
# Test biblio-level holds
my $item_group = Koha::Biblio::ItemGroup->new( { biblio_id => $biblio->id } )->store();
$biblio_hold = $builder->build_object(
{
class => "Koha::Holds",
value => {
biblionumber => $biblio->biblionumber,
branchcode => $library_3->branchcode,
itemnumber => undef,
priority => 1,
item_group_id => $item_group->id,
}
}
);
$biblio_hold_api_data = $biblio_hold->to_api;
$biblio_hold->delete;
$biblio_hold_data = {
biblio_id => $biblio_hold_api_data->{biblio_id},
patron_id => $biblio_hold_api_data->{patron_id},
pickup_library_id => $library_1->branchcode,
};
$t->post_ok( "//$userid:$password@/api/v1/holds" => json => $biblio_hold_data )
->status_is(400)
->json_is({ error => 'The supplied pickup location is not valid' });