@@ -, +, @@ should fail. again. This time all tests should pass. --- t/db_dependent/Reserves.t | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) --- a/t/db_dependent/Reserves.t +++ a/t/db_dependent/Reserves.t @@ -2,7 +2,7 @@ use Modern::Perl; -use Test::More tests => 18; +use Test::More tests => 20; use MARC::Record; use DateTime::Duration; @@ -269,7 +269,15 @@ is(exists $messages->{ResFound}?1:0, 1, 'AddReturn considers future reserve with # End of tests for bug 9761 (ConfirmFutureHolds) # test marking a hold as captured +my $hold_notice_count = count_hold_print_messages(); ModReserveAffect($itemnumber, $requesters{'CPL'}, 0); +my $new_count = count_hold_print_messages(); +is($new_count, $hold_notice_count + 1, 'patron notified when item set to waiting'); + +# test that duplicate notices aren't generated +ModReserveAffect($itemnumber, $requesters{'CPL'}, 0); +$new_count = count_hold_print_messages(); +is($new_count, $hold_notice_count + 1, 'patron not notified a second time (bug 11445)'); is( DelItemCheck($dbh, $bibnum, $itemnumber), @@ -281,3 +289,10 @@ my $letter = ReserveSlip('CPL', $requesters{'CPL'}, $bibnum); ok(defined($letter), 'can successfully generate hold slip (bug 10949)'); $dbh->rollback; + +sub count_hold_print_messages { + my $message_count = $dbh->selectall_arrayref(q{ + SELECT COUNT(*) FROM message_queue WHERE letter_code = 'HOLD_PRINT' + }); + return $message_count->[0]->[0]; +} --