From 4281aac997433b7062087bcaeae673a87f730601 Mon Sep 17 00:00:00 2001 From: Arthur Suzuki Date: Thu, 27 Feb 2020 14:45:17 +0100 Subject: [PATCH] Bug 17229: moved UnitTest to t/db_dependant/ILSDI_Service.t Signed-off-by: David Nind Signed-off-by: Martin Renvoize --- t/db_dependent/Holds.t | 20 +----------------- t/db_dependent/ILSDI_Services.t | 36 ++++++++++++++++++++++++++++++++- 2 files changed, 36 insertions(+), 20 deletions(-) diff --git a/t/db_dependent/Holds.t b/t/db_dependent/Holds.t index cee1ce72ac..3e736f6774 100755 --- a/t/db_dependent/Holds.t +++ b/t/db_dependent/Holds.t @@ -43,12 +43,7 @@ my $dbh = C4::Context->dbh; my $branch_1 = $builder->build({ source => 'Branch' })->{ branchcode }; my $branch_2 = $builder->build({ source => 'Branch' })->{ branchcode }; -my $category = $builder->build({ - source => 'Category', - value => { - BlockExpiredPatronOpacActions => -1, - }, -}); +my $category = $builder->build({ source => 'Category' }); my $borrowers_count = 5; @@ -132,19 +127,6 @@ my $patron = Koha::Patrons->find( $borrowernumbers[0] ); $holds = $patron->holds; is( $holds->next->borrowernumber, $borrowernumbers[0], "Test Koha::Patron->holds"); -my $expired_borrowernumber = Koha::Patron->new({ - firstname => 'Expired', - surname => 'Patron', - categorycode => $category->{categorycode}, - branchcode => $branch_1, - dateexpiry => '2000-01-01', - })->store->borrowernumber; - -t::lib::Mocks::mock_preference('BlockExpiredPatronOpacActions', 1); -ok( - CanItemBeReserved($expired_borrowernumber, $itemnumber)->{status} eq 'patronExpired', - 'Expired patron cannot reserve' -); $holds = $item->current_holds; $first_hold = $holds->next; diff --git a/t/db_dependent/ILSDI_Services.t b/t/db_dependent/ILSDI_Services.t index 3ce217ba15..0a13d5b18a 100755 --- a/t/db_dependent/ILSDI_Services.t +++ b/t/db_dependent/ILSDI_Services.t @@ -300,7 +300,7 @@ subtest 'LookupPatron test' => sub { subtest 'Holds test' => sub { - plan tests => 7; + plan tests => 8; $schema->storage->txn_begin; @@ -427,6 +427,40 @@ subtest 'Holds test' => sub { is( $reply->{code}, 'alreadypossession', "Patron has issued same book" ); is( $reply->{pickup_location}, undef, "No reserve placed"); + # Test Patron cannot reserve if expired and BlockExpiredPatronOpacActions + my $category = $builder->build({ + source => 'Category', + value => { BlockExpiredPatronOpacActions => -1 } + }); + + my $branch_1 = $builder->build({ source => 'Branch' })->{ branchcode }; + + my $expired_borrowernumber = Koha::Patron->new({ + firstname => 'Expired', + surname => 'Patron', + categorycode => $category->{categorycode}, + branchcode => $branch_1, + dateexpiry => '2000-01-01', + })->store->borrowernumber; + + t::lib::Mocks::mock_preference('BlockExpiredPatronOpacActions', 1); + + my $item5 = $builder->build({ + source => 'Item', + value => { + biblionumber => $biblio_with_no_item->{biblionumber}, + damaged => 0, + } + }); + + $query = new CGI; + $query->param( 'patron_id', $expired_borrowernumber); + $query->param( 'bib_id', $biblio_with_no_item->{biblionumber}); + $query->param( 'item_id', $item5->{itemnumber}); + + $reply = C4::ILSDI::Services::HoldItem( $query ); + is( $reply->{code}, 'PatronExpired', "Patron is expired" ); + $schema->storage->txn_rollback; }; -- 2.20.1