Bugzilla – Attachment 131524 Details for
Bug 30155
We shouldn't calculate get_items_that_can_fill when we don't have any holds
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 30155: Don't get items that can fillholds if there are no holds
Bug-30155-Dont-get-items-that-can-fillholds-if-the.patch (text/plain), 2.77 KB, created by
Tomás Cohen Arazi (tcohen)
on 2022-03-09 14:11:13 UTC
(
hide
)
Description:
Bug 30155: Don't get items that can fillholds if there are no holds
Filename:
MIME Type:
Creator:
Tomás Cohen Arazi (tcohen)
Created:
2022-03-09 14:11:13 UTC
Size:
2.77 KB
patch
obsolete
>From 7ea80765afbebca9004b9b1698ea7f3179b1453a Mon Sep 17 00:00:00 2001 >From: Nick Clemens <nick@bywatersolutions.com> >Date: Tue, 22 Feb 2022 16:54:03 +0000 >Subject: [PATCH] Bug 30155: Don't get items that can fillholds if there are no > holds > >This makes two changes: >1 - We no longer call get_items_that_can_fill if there are no holds >2 - The subroutine will return an empty Koha::Items object if there are no holds passed > >Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> >Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> >--- > Koha/Holds.pm | 3 +++ > circ/pendingreserves.pl | 6 ++++-- > t/db_dependent/Koha/Holds.t | 7 ++++++- > 3 files changed, 13 insertions(+), 3 deletions(-) > >diff --git a/Koha/Holds.pm b/Koha/Holds.pm >index 187e61bbc7..5784cd7047 100644 >--- a/Koha/Holds.pm >+++ b/Koha/Holds.pm >@@ -111,6 +111,9 @@ Items that are not: > sub get_items_that_can_fill { > my ( $self ) = @_; > >+ return Koha::Items->new->empty() >+ unless $self->count() > 0; >+ > my @itemnumbers = $self->search({ 'me.itemnumber' => { '!=' => undef } })->get_column('itemnumber'); > my @biblionumbers = $self->search({ 'me.itemnumber' => undef })->get_column('biblionumber'); > my @bibs_or_items; >diff --git a/circ/pendingreserves.pl b/circ/pendingreserves.pl >index 12e7c193c0..14f0dc8983 100755 >--- a/circ/pendingreserves.pl >+++ b/circ/pendingreserves.pl >@@ -193,8 +193,10 @@ my $holds = Koha::Holds->search( > my @biblionumbers = $holds->get_column('biblionumber'); > > my $all_items; >-foreach my $item ( $holds->get_items_that_can_fill->as_list ) { >- push @{$all_items->{$item->biblionumber}}, $item; >+if ( $holds->count ) { >+ foreach my $item ( $holds->get_items_that_can_fill->as_list ) { >+ push @{ $all_items->{ $item->biblionumber } }, $item; >+ } > } > > # patrons count per biblio >diff --git a/t/db_dependent/Koha/Holds.t b/t/db_dependent/Koha/Holds.t >index e3c2735df3..2d99dedd41 100755 >--- a/t/db_dependent/Koha/Holds.t >+++ b/t/db_dependent/Koha/Holds.t >@@ -411,7 +411,7 @@ subtest 'Desks' => sub { > }; > > subtest 'get_items_that_can_fill' => sub { >- plan tests => 3; >+ plan tests => 5; > > my $biblio = $builder->build_sample_biblio; > my $itype_1 = $builder->build_object({ class => 'Koha::ItemTypes' }); # For 1, 2, 3, 4 >@@ -503,6 +503,11 @@ subtest 'get_items_that_can_fill' => sub { > is_deeply( [ map { $_->itemnumber } $items->as_list ], > [ $item_2->itemnumber ], 'Only item 2 is available for filling the hold' ); > >+ my $no_holds = Koha::Holds->new->empty(); >+ my $no_items = $no_holds->get_items_that_can_fill(); >+ is( ref $no_items, "Koha::Items", "Routine returns a Koha::Items object"); >+ is( $no_items->count, 0, "Object is empty when called on no holds"); >+ > }; > > subtest 'set_waiting+patron_expiration_date' => sub { >-- >2.32.0
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
|
Splinter Review
Attachments on
bug 30155
:
131024
|
131485
| 131524