Bug 29806: Fix POST /holds use of pickup_locations

This patch makes Koha::Item->pickup_locations and
Koha::Biblio->pickup_locations explicitly call ->as_list in list
context. This way we workaround bug 28871.

To test:
1. Apply the regression tests patch
2. Run:
   $ kshell
  k$ prove t/db_dependent/api/v1/holds.t
=> FAIL: Tests fail, the route gives a 500 (unhandled exception)
3. Apply this patch
4. Repeat 2
=> SUCCESS: Tests pass, the route correctly returns a 400 with a
message about the pickup location being invalid
5. Sign off :-D

Signed-off-by: David Nind <david@davidnind.com>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
This commit is contained in:
Tomás Cohen Arazi 2022-01-06 09:27:45 -03:00 committed by Fridolin Somers
parent 3eb2f8ebbe
commit cdbfadbc92

View file

@ -148,13 +148,13 @@ sub add {
$valid_pickup_location =
any { $_->branchcode eq $pickup_library_id }
$item->pickup_locations(
{ patron => $patron } );
{ patron => $patron } )->as_list;
}
else {
$valid_pickup_location =
any { $_->branchcode eq $pickup_library_id }
$biblio->pickup_locations(
{ patron => $patron } );
{ patron => $patron } )->as_list;
}
return $c->render(