From 967a365ae635893b2945b4a9e6732fd07153d81e Mon Sep 17 00:00:00 2001 From: Baptiste Date: Mon, 9 Dec 2024 14:35:24 +0100 Subject: [PATCH] Bug 35292: Move tests of UpdateNotforloan together Note: These patches have been split for sake of understandability for review but they should probably be squashed --- t/db_dependent/Circulation/issue.t | 71 ++++++++++++++++++------------ 1 file changed, 42 insertions(+), 29 deletions(-) diff --git a/t/db_dependent/Circulation/issue.t b/t/db_dependent/Circulation/issue.t index 8b91a27a880..c384a776a9e 100755 --- a/t/db_dependent/Circulation/issue.t +++ b/t/db_dependent/Circulation/issue.t @@ -490,6 +490,48 @@ is( q{UpdateNotForLoanStatusOnCheckin does not update notforloan value for specific itemtype from 1 with setting "1: ONLYMESSAGE"} ); +############################################## +# +# UpdateNotForLoanStatusOnCheckout +# +############################################## + +my $itemnumber4 = Koha::Item->new( + { + biblionumber => $biblionumber, + barcode => 'barcode_6', + itemcallnumber => 'callnumber6', + homebranch => $branchcode_1, + holdingbranch => $branchcode_1, + notforloan => -1, + itype => $itemtype, + location => 'loc1' + }, +)->store->itemnumber; + +t::lib::Mocks::mock_preference( 'UpdateNotForLoanStatusOnCheckout', q{} ); +AddIssue( $patron_2, 'barcode_6', dt_from_string ); +$item = Koha::Items->find( $itemnumber4 ); +ok( $item->notforloan eq -1, 'UpdateNotForLoanStatusOnCheckout does not modify value when not enabled' ); + +t::lib::Mocks::mock_preference( 'UpdateNotForLoanStatusOnCheckout', '-1: 0' ); +AddReturn( 'barcode_6', $branchcode_1 ); +my $test = AddIssue( $patron_2, 'barcode_6', dt_from_string ); +$item = Koha::Items->find( $itemnumber4 ); +ok( $item->notforloan eq 0, q{UpdateNotForLoanStatusOnCheckout updates notforloan value from -1 to 0 with setting "-1: 0"} ); + +AddIssue( $patron_2, 'barcode_6', dt_from_string ); +AddReturn( 'barcode_6', $branchcode_1 ); +$item = Koha::Items->find( $itemnumber4 ); +ok( $item->notforloan eq 0, q{UpdateNotForLoanStatusOnCheckout does not update notforloan value from 0 with setting "-1: 0"} ); + + +########################################## +# +# END UpdateNotforloanOnCheckout +# +########################################## + my $itemnumber2 = Koha::Item->new( { biblionumber => $biblionumber, @@ -636,35 +678,6 @@ AddRenewal( my ( $unseen_reset ) = ( C4::Circulation::GetRenewCount( $unseen_patron->borrowernumber, $unseen_item->itemnumber ) )[3]; is( $unseen_reset, 0, 'seen renewal resets the unseen count' ); -my $itemnumber4 = Koha::Item->new( - { - biblionumber => $biblionumber, - barcode => 'barcode_6', - itemcallnumber => 'callnumber6', - homebranch => $branchcode_1, - holdingbranch => $branchcode_1, - notforloan => -1, - itype => $itemtype, - location => 'loc1' - }, -)->store->itemnumber; - -t::lib::Mocks::mock_preference( 'UpdateNotForLoanStatusOnCheckout', q{} ); -AddIssue( $patron_2, 'barcode_6', dt_from_string ); -$item = Koha::Items->find( $itemnumber4 ); -ok( $item->notforloan eq -1, 'UpdateNotForLoanStatusOnCheckout does not modify value when not enabled' ); - -t::lib::Mocks::mock_preference( 'UpdateNotForLoanStatusOnCheckout', '-1: 0' ); -AddReturn( 'barcode_6', $branchcode_1 ); -my $test = AddIssue( $patron_2, 'barcode_6', dt_from_string ); -$item = Koha::Items->find( $itemnumber4 ); -ok( $item->notforloan eq 0, q{UpdateNotForLoanStatusOnCheckout updates notforloan value from -1 to 0 with setting "-1: 0"} ); - -AddIssue( $patron_2, 'barcode_6', dt_from_string ); -AddReturn( 'barcode_6', $branchcode_1 ); -$item = Koha::Items->find( $itemnumber4 ); -ok( $item->notforloan eq 0, q{UpdateNotForLoanStatusOnCheckout does not update notforloan value from 0 with setting "-1: 0"} ); - # Bug 21159 - Update item shelving location on checkout my $itemnumber5 = Koha::Item->new( { -- 2.30.2