When checking out an item: The method Koha::Item-> is not covered by tests! Trace begun at /home/koha/env/master/src/Koha/Object.pm line 495 Koha::Object::AUTOLOAD('Koha::Item=HASH(0x55c5a43bcfb0)') called at /home/koha/env/master/src/C4/Reserves.pm line 799 C4::Reserves::CheckReserves(9) called at /home/koha/env/master/src/C4/Circulation.pm line 1024 C4::Circulation::CanBookBeIssued('Koha::Patron=HASH(0x55c5a43d6298)', 1, undef, undef, undef, 'HASH(0x55c5a45432b0)') called at /home/koha/env/master/src/circ/circulation.pl line 349 The bad lines are : my $hold_fulfillment_policy = $branchitemrule->{hold_fulfillment_policy}; next if ( ($branchitemrule->{hold_fulfillment_policy} ne 'any') && ($res->{branchcode} ne $item->$hold_fulfillment_policy) ); $hold_fulfillment_policy can apparently be empty, and this is not checked. I'm not sure what should be done in this case. Steps to reproduce: 1. Go to "Circulation and fines rules" 2. Under "Default checkout, hold and return policy", unset "Hold pickup library match" and Save 3. Place a hold on one item for one patron 4. Try to checkout the same item with another patron Caused by bug 21206
Created attachment 95339 [details] [review] Bug 23985: (bug 21206 follow-up) Fix checkout list when "Hold pickup library match" not set This patch restores the behavior prior to bug 21206. If "Hold pickup library match" is "Not set", then hold_fulfillment_policy equals an empty string. Test plan: 1. Go to "Circulation and fines rules" 2. Under "Default checkout, hold and return policy", unset "Hold pickup library match" and Save 3. Place a hold on one item for one patron 4. Try to checkout the same item with another patron => Without this patch you the checkout list do not show, and the logs contain "The method Koha::Item-> is not covered by tests!" => With this patch applied you see the checkout list QA will take care of comparing the statement with the one before bug 21206 and make sure they are equivalent
Created attachment 95352 [details] [review] Bug 23985: (bug 21206 follow-up) Fix checkout list when "Hold pickup library match" not set This patch restores the behavior prior to bug 21206. If "Hold pickup library match" is "Not set", then hold_fulfillment_policy equals an empty string. Test plan: 1. Go to "Circulation and fines rules" 2. Under "Default checkout, hold and return policy", unset "Hold pickup library match" and Save 3. Place a hold on one item for one patron 4. Try to checkout the same item with another patron => Without this patch you the checkout list do not show, and the logs contain "The method Koha::Item-> is not covered by tests!" => With this patch applied you see the checkout list QA will take care of comparing the statement with the one before bug 21206 and make sure they are equivalent Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
Works as expected. Thanks for the patch Jonathan
Created attachment 95389 [details] [review] Bug 23985: (bug 21206 follow-up) Fix checkout list when "Hold pickup library match" not set This patch restores the behavior prior to bug 21206. If "Hold pickup library match" is "Not set", then hold_fulfillment_policy equals an empty string. Test plan: 1. Go to "Circulation and fines rules" 2. Under "Default checkout, hold and return policy", unset "Hold pickup library match" and Save 3. Place a hold on one item for one patron 4. Try to checkout the same item with another patron => Without this patch you the checkout list do not show, and the logs contain "The method Koha::Item-> is not covered by tests!" => With this patch applied you see the checkout list QA will take care of comparing the statement with the one before bug 21206 and make sure they are equivalent Signed-off-by: Julian Maurice <julian.maurice@biblibre.com> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
I've checked the queries and am happy they match.. Passing QA
Nice work! Pushed to master for 19.11.00
Pushed to 19.05.x for 19.05.05