From: Dan Wells <dbw2@calvin.edu>
Date: Thu, 22 Mar 2018 14:31:58 +0000 (-0400)
Subject: LP#1755502 Fix hold user test
X-Git-Url: https://old-git.evergreen-ils.org/?a=commitdiff_plain;h=80d9f5faa04e87f5b5e90b85c0f8c3ab0d3ed30d;p=evergreen%2Fjoelewis.git

LP#1755502 Fix hold user test

Now that we are fleshing this field, we need to dig a little deeper
for the 'id' to test if we are the same user.

To test
-------
[1] Set up a patron with a hold request and with a item
    on the hold shelf that fills the hold.
[2] Check out the item to patron. Note that you
    will get a ITEM_ON_HOLDS_SHELF alert, even though the
    item is on hold for that patron. Cancel the alert.
[3] Apply the patch and repeat step 2. This time, the checkout
    will proceed.
[4] Set up another patron with a hold request and an item
    on the hold shelf, then checkout it at to a _different_ patron.
    Verify that the ITEM_ON_HOLDS_SHELF alert appears.

This patch also fixes test failures caught by the
19-lp1306666-abort-transit-copy-status.t live test.

Signed-off-by: Dan Wells <dbw2@calvin.edu>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
---

diff --git a/Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm b/Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm
index 3f3d9461b1..c2d55186cf 100644
--- a/Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm
+++ b/Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm
@@ -1126,7 +1126,7 @@ sub check_captured_holds {
         ]
     )->[0];
 
-    if ($hold and $hold->usr == $patron->id) {
+    if ($hold and $hold->usr->id == $patron->id) {
         $self->checkout_is_for_hold(1);
         return undef;
     } elsif ($hold) {