From 9813bac90107c03da23884899bf5af5d96f3996e Mon Sep 17 00:00:00 2001 From: Marcel de Rooy Date: Thu, 26 Sep 2013 12:22:51 +0200 Subject: [PATCH] Bug 9788: Unit tests for changed routine GetReservesFromItemnumber Content-Type: text/plain; charset=utf-8 Adds three tests to Reserves.t for GetReservesFromItemnumber. We test if this routine does not return a future next available hold, a future item level hold. And if it does return a future wait (that is: a confirmed future hold, using ConfirmFutureHolds). Note that Holds.t does also contains some basic tests for this routine, but the additional tests seem to better located in the direct context of tests for bug 9761 for ConfirmFutureHolds. Test plan: Run both t/db_dependent/Holds.t and t/db_dependent/Reserves.t. Verify if both tests do not fail. Signed-off-by: Kyle M Hall Signed-off-by: Jonathan Druart --- t/db_dependent/Reserves.t | 26 ++++++++++++++++++++++++++ 1 files changed, 26 insertions(+), 0 deletions(-) diff --git a/t/db_dependent/Reserves.t b/t/db_dependent/Reserves.t index fe0baaa..ae1e19c 100755 --- a/t/db_dependent/Reserves.t +++ b/t/db_dependent/Reserves.t @@ -291,6 +291,32 @@ is( my $letter = ReserveSlip('CPL', $requesters{'CPL'}, $bibnum); ok(defined($letter), 'can successfully generate hold slip (bug 10949)'); +# Tests for bug 9788: Does GetReservesFromItemnumber return a future wait? +# 9788a: GetReservesFromItemnumber does not return future next available hold +$dbh->do("DELETE FROM reserves WHERE biblionumber=?",undef,($bibnum)); +C4::Context->set_preference('ConfirmFutureHolds', 2); +C4::Context->set_preference('AllowHoldDateInFuture', 1); +$resdate= dt_from_string(); +$resdate->add_duration(DateTime::Duration->new(days => 2)); +$resdate=output_pref($resdate); +AddReserve('CPL', $requesters{'CPL'}, $bibnum, + $constraint, $bibitems, 1, $resdate, $expdate, $notes, + $title, $checkitem, $found); +my @results= GetReservesFromItemnumber($itemnumber); +is(defined $results[3]?1:0, 0, 'GetReservesFromItemnumber does not return a future next available hold'); +# 9788b: GetReservesFromItemnumber does not return future item level hold +$dbh->do("DELETE FROM reserves WHERE biblionumber=?",undef,($bibnum)); +AddReserve('CPL', $requesters{'CPL'}, $bibnum, + $constraint, $bibitems, 1, $resdate, $expdate, $notes, + $title, $itemnumber, $found); #item level hold +@results= GetReservesFromItemnumber($itemnumber); +is(defined $results[3]?1:0, 0, 'GetReservesFromItemnumber does not return a future item level hold'); +# 9788c: GetReservesFromItemnumber returns future wait (confirmed future hold) +ModReserveAffect( $itemnumber, $requesters{'CPL'} , 0); #confirm hold +@results= GetReservesFromItemnumber($itemnumber); +is(defined $results[3]?1:0, 1, 'GetReservesFromItemnumber returns a future wait (confirmed future hold)'); +# End of tests for bug 9788 + $dbh->rollback; sub count_hold_print_messages { -- 1.7.7.6