From ab1d702f3bff6d075612ff724dcc70f33eeacb81 Mon Sep 17 00:00:00 2001
From: Nick Clemens <nick@bywatersolutions.com>
Date: Mon, 24 Dec 2018 15:59:22 +0000
Subject: [PATCH] Bug 17978: Unit tests for changes

---
 t/db_dependent/Holds.t | 18 ++++++++++++++++--
 1 file changed, 16 insertions(+), 2 deletions(-)

diff --git a/t/db_dependent/Holds.t b/t/db_dependent/Holds.t
index 863ae27f63..f595199604 100755
--- a/t/db_dependent/Holds.t
+++ b/t/db_dependent/Holds.t
@@ -7,7 +7,7 @@ use t::lib::TestBuilder;
 
 use C4::Context;
 
-use Test::More tests => 57;
+use Test::More tests => 58;
 use MARC::Record;
 use C4::Items;
 use C4::Biblio;
@@ -415,6 +415,13 @@ my $res_id = AddReserve( $branch_1, $borrowernumbers[0], $bibnum, '', 1, );
 is( CanItemBeReserved( $borrowernumbers[0], $itemnumber )->{status},
     'tooManyReserves', 'Patron cannot reserve item with hold limit of 1, 1 bib level hold placed' );
 
+    #results should be the same for both ReservesControlBranch settings
+t::lib::Mocks::mock_preference( 'ReservesControlBranch', 'ItemHomeLibrary' );
+is( CanItemBeReserved( $borrowernumbers[0], $itemnumber )->{status},
+    'tooManyReserves', 'Patron cannot reserve item with hold limit of 1, 1 bib level hold placed' );
+#reset for further tests
+t::lib::Mocks::mock_preference( 'ReservesControlBranch', 'PatronLibrary' );
+
 subtest 'Test max_holds per library/patron category' => sub {
     plan tests => 6;
 
@@ -523,7 +530,7 @@ $schema->storage->txn_rollback;
 
 subtest 'CanItemBeReserved / holds_per_day tests' => sub {
 
-    plan tests => 9;
+    plan tests => 10;
 
     $schema->storage->txn_begin;
 
@@ -643,6 +650,13 @@ subtest 'CanItemBeReserved / holds_per_day tests' => sub {
         { status => 'tooManyReserves', limit => 3 },
         'Unlimited daily holds, but reached reservesallowed'
     );
+    #results should be the same for both ReservesControlBranch settings
+    t::lib::Mocks::mock_preference('ReservesControlBranch', 'ItemHomeLibrary');
+    is_deeply(
+        CanItemBeReserved( $patron->borrowernumber, $itemnumber_3 ),
+        { status => 'tooManyReserves', limit => 3 },
+        'Unlimited daily holds, but reached reservesallowed'
+    );
 
     $schema->storage->txn_rollback;
 };
-- 
2.11.0