Bugzilla – Attachment 159523 Details for
Bug 18139
'Too many checked out' can confuse librarians
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 18139: Add/update unit tests
Bug-18139-Addupdate-unit-tests.patch (text/plain), 23.42 KB, created by
Martin Renvoize (ashimema)
on 2023-12-04 14:10:36 UTC
(
hide
)
Description:
Bug 18139: Add/update unit tests
Filename:
MIME Type:
Creator:
Martin Renvoize (ashimema)
Created:
2023-12-04 14:10:36 UTC
Size:
23.42 KB
patch
obsolete
>From 9ff1f6147e40e24279bfbf5c1960326f83a5692d Mon Sep 17 00:00:00 2001 >From: Kyle M Hall <kyle@bywatersolutions.com> >Date: Tue, 28 Nov 2023 12:24:53 -0500 >Subject: [PATCH] Bug 18139: Add/update unit tests >MIME-Version: 1.0 >Content-Type: text/plain; charset=UTF-8 >Content-Transfer-Encoding: 8bit > >Signed-off-by: Eric Gosselin <eric.gosselin@inlibro.com> >Signed-off-by: Marc Véron <veron@veron.ch> >Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> >--- > t/db_dependent/Circulation/TooMany.t | 216 ++++++++++++++++++++------- > 1 file changed, 164 insertions(+), 52 deletions(-) > >diff --git a/t/db_dependent/Circulation/TooMany.t b/t/db_dependent/Circulation/TooMany.t >index 46c6bd8b1a1..44b0a9bffa8 100755 >--- a/t/db_dependent/Circulation/TooMany.t >+++ b/t/db_dependent/Circulation/TooMany.t >@@ -96,7 +96,7 @@ subtest 'no rules exist' => sub { > }; > > subtest '1 Issuingrule exist 0 0: no issue allowed' => sub { >- plan tests => 4; >+ plan tests => 8; > Koha::CirculationRules->set_rules( > { > branchcode => $branch->{branchcode}, >@@ -109,8 +109,12 @@ subtest '1 Issuingrule exist 0 0: no issue allowed' => sub { > }, > ); > t::lib::Mocks::mock_preference('ConsiderOnSiteCheckoutsAsNormalCheckouts', 0); >+ >+ my $data = C4::Circulation::TooMany( $patron, $item ); >+ my $rule = delete $data->{circulation_rule}; >+ is( ref $rule, 'Koha::CirculationRule', 'Circulation rule was returned' ); > is_deeply( >- C4::Circulation::TooMany( $patron, $item ), >+ $data, > { > reason => 'TOO_MANY_CHECKOUTS', > count => 0, >@@ -118,8 +122,11 @@ subtest '1 Issuingrule exist 0 0: no issue allowed' => sub { > }, > 'CO should not be allowed if ConsiderOnSiteCheckoutsAsNormalCheckouts == 0' > ); >+ $data = C4::Circulation::TooMany( $patron, $item, { onsite_checkout => 1 } ), >+ $rule = delete $data->{circulation_rule}; >+ is( ref $rule, 'Koha::CirculationRule', 'Circulation rule was returned' ); > is_deeply( >- C4::Circulation::TooMany( $patron, $item, { onsite_checkout => 1 } ), >+ $data, > { > reason => 'TOO_MANY_ONSITE_CHECKOUTS', > count => 0, >@@ -129,8 +136,11 @@ subtest '1 Issuingrule exist 0 0: no issue allowed' => sub { > ); > > t::lib::Mocks::mock_preference('ConsiderOnSiteCheckoutsAsNormalCheckouts', 1); >+ $data = C4::Circulation::TooMany( $patron, $item ); >+ $rule = delete $data->{circulation_rule}; >+ is( ref $rule, 'Koha::CirculationRule', 'Circulation rule was returned' ); > is_deeply( >- C4::Circulation::TooMany( $patron, $item ), >+ $data, > { > reason => 'TOO_MANY_CHECKOUTS', > count => 0, >@@ -138,8 +148,11 @@ subtest '1 Issuingrule exist 0 0: no issue allowed' => sub { > }, > 'CO should not be allowed if ConsiderOnSiteCheckoutsAsNormalCheckouts == 1' > ); >+ $data = C4::Circulation::TooMany( $patron, $item, { onsite_checkout => 1 } ), >+ $rule = delete $data->{circulation_rule}; >+ is( ref $rule, 'Koha::CirculationRule', 'Circulation rule was returned' ); > is_deeply( >- C4::Circulation::TooMany( $patron, $item, { onsite_checkout => 1 } ), >+ $data, > { > reason => 'TOO_MANY_ONSITE_CHECKOUTS', > count => 0, >@@ -152,7 +165,7 @@ subtest '1 Issuingrule exist 0 0: no issue allowed' => sub { > }; > > subtest '1 Issuingrule exist with onsiteissueqty=unlimited' => sub { >- plan tests => 4; >+ plan tests => 8; > > Koha::CirculationRules->set_rules( > { >@@ -168,8 +181,11 @@ subtest '1 Issuingrule exist with onsiteissueqty=unlimited' => sub { > > my $issue = C4::Circulation::AddIssue( $patron, $item->barcode, dt_from_string() ); > t::lib::Mocks::mock_preference('ConsiderOnSiteCheckoutsAsNormalCheckouts', 0); >+ my $data = C4::Circulation::TooMany( $patron, $item ); >+ my $rule = delete $data->{circulation_rule}; >+ is( ref $rule, 'Koha::CirculationRule', 'Circulation rule was returned' ); > is_deeply( >- C4::Circulation::TooMany( $patron, $item ), >+ $data, > { > reason => 'TOO_MANY_CHECKOUTS', > count => 1, >@@ -177,15 +193,21 @@ subtest '1 Issuingrule exist with onsiteissueqty=unlimited' => sub { > }, > 'CO should not be allowed if ConsiderOnSiteCheckoutsAsNormalCheckouts == 0' > ); >- is( >- C4::Circulation::TooMany( $patron, $item, { onsite_checkout => 1 } ), >- undef, >+ $data = C4::Circulation::TooMany( $patron, $item, { onsite_checkout => 1 } ); >+ $rule = delete $data->{circulation_rule}; >+ is( ref $rule, '', 'No circulation rule was returned' ); >+ is_deeply( >+ $data, >+ {}, > 'OSCO should be allowed if ConsiderOnSiteCheckoutsAsNormalCheckouts == 0' > ); > > t::lib::Mocks::mock_preference('ConsiderOnSiteCheckoutsAsNormalCheckouts', 1); >+ $data = C4::Circulation::TooMany( $patron, $item ); >+ $rule = delete $data->{circulation_rule}; >+ is( ref $rule, 'Koha::CirculationRule', 'Circulation rule was returned' ); > is_deeply( >- C4::Circulation::TooMany( $patron, $item ), >+ $data, > { > reason => 'TOO_MANY_CHECKOUTS', > count => 1, >@@ -193,8 +215,11 @@ subtest '1 Issuingrule exist with onsiteissueqty=unlimited' => sub { > }, > 'CO should not be allowed if ConsiderOnSiteCheckoutsAsNormalCheckouts == 1' > ); >+ $data = C4::Circulation::TooMany( $patron, $item, { onsite_checkout => 1 } ); >+ $rule = delete $data->{circulation_rule}; >+ is( ref $rule, 'Koha::CirculationRule', 'Circulation rule was returned' ); > is_deeply( >- C4::Circulation::TooMany( $patron, $item, { onsite_checkout => 1 } ), >+ $data, > { > reason => 'TOO_MANY_CHECKOUTS', > count => 1, >@@ -248,7 +273,7 @@ subtest '1 Issuingrule exist 1 1: issue is allowed' => sub { > }; > > subtest '1 Issuingrule exist: 1 CO allowed, 1 OSCO allowed. Do a CO' => sub { >- plan tests => 5; >+ plan tests => 9; > Koha::CirculationRules->set_rules( > { > branchcode => $branch->{branchcode}, >@@ -265,8 +290,11 @@ subtest '1 Issuingrule exist: 1 CO allowed, 1 OSCO allowed. Do a CO' => sub { > like( $issue->issue_id, qr|^\d+$|, 'The issue should have been inserted' ); > > t::lib::Mocks::mock_preference('ConsiderOnSiteCheckoutsAsNormalCheckouts', 0); >+ my $data = C4::Circulation::TooMany( $patron, $item ); >+ my $rule = delete $data->{circulation_rule}; >+ is( ref $rule, 'Koha::CirculationRule', 'Circulation rule was returned' ); > is_deeply( >- C4::Circulation::TooMany( $patron, $item ), >+ $data, > { > reason => 'TOO_MANY_CHECKOUTS', > count => 1, >@@ -274,15 +302,21 @@ subtest '1 Issuingrule exist: 1 CO allowed, 1 OSCO allowed. Do a CO' => sub { > }, > 'CO should not be allowed if ConsiderOnSiteCheckoutsAsNormalCheckouts == 0' > ); >- is( >- C4::Circulation::TooMany( $patron, $item, { onsite_checkout => 1 } ), >- undef, >+ $data = C4::Circulation::TooMany( $patron, $item, { onsite_checkout => 1 } ); >+ $rule = delete $data->{circulation_rule}; >+ is( ref $rule, '', 'No circulation rule was returned' ); >+ is_deeply( >+ $data, >+ {}, > 'OSCO should be allowed if ConsiderOnSiteCheckoutsAsNormalCheckouts == 0' > ); > > t::lib::Mocks::mock_preference('ConsiderOnSiteCheckoutsAsNormalCheckouts', 1); >+ $data = C4::Circulation::TooMany( $patron, $item ); >+ $rule = delete $data->{circulation_rule}; >+ is( ref $rule, 'Koha::CirculationRule', 'Circulation rule was returned' ); > is_deeply( >- C4::Circulation::TooMany( $patron, $item ), >+ $data, > { > reason => 'TOO_MANY_CHECKOUTS', > count => 1, >@@ -290,8 +324,11 @@ subtest '1 Issuingrule exist: 1 CO allowed, 1 OSCO allowed. Do a CO' => sub { > }, > 'CO should not be allowed if ConsiderOnSiteCheckoutsAsNormalCheckouts == 1' > ); >+ $data = C4::Circulation::TooMany( $patron, $item, { onsite_checkout => 1 } ); >+ $rule = delete $data->{circulation_rule}; >+ is( ref $rule, 'Koha::CirculationRule', 'Circulation rule was returned' ); > is_deeply( >- C4::Circulation::TooMany( $patron, $item, { onsite_checkout => 1 } ), >+ $data, > { > reason => 'TOO_MANY_CHECKOUTS', > count => 1, >@@ -304,7 +341,7 @@ subtest '1 Issuingrule exist: 1 CO allowed, 1 OSCO allowed. Do a CO' => sub { > }; > > subtest '1 Issuingrule exist: 1 CO allowed, 1 OSCO allowed, Do a OSCO' => sub { >- plan tests => 5; >+ plan tests => 8; > Koha::CirculationRules->set_rules( > { > branchcode => $branch->{branchcode}, >@@ -326,8 +363,11 @@ subtest '1 Issuingrule exist: 1 CO allowed, 1 OSCO allowed, Do a OSCO' => sub { > undef, > 'CO should be allowed if ConsiderOnSiteCheckoutsAsNormalCheckouts == 0' > ); >+ my $data = C4::Circulation::TooMany( $patron, $item, { onsite_checkout => 1 } ); >+ my $rule = delete $data->{circulation_rule}; >+ is( ref $rule, 'Koha::CirculationRule', 'Circulation rule was returned' ); > is_deeply( >- C4::Circulation::TooMany( $patron, $item, { onsite_checkout => 1 } ), >+ $data, > { > reason => 'TOO_MANY_ONSITE_CHECKOUTS', > count => 1, >@@ -337,8 +377,11 @@ subtest '1 Issuingrule exist: 1 CO allowed, 1 OSCO allowed, Do a OSCO' => sub { > ); > > t::lib::Mocks::mock_preference('ConsiderOnSiteCheckoutsAsNormalCheckouts', 1); >+ $data = C4::Circulation::TooMany( $patron, $item ); >+ $rule = delete $data->{circulation_rule}; >+ is( ref $rule, 'Koha::CirculationRule', 'Circulation rule was returned' ); > is_deeply( >- C4::Circulation::TooMany( $patron, $item ), >+ $data, > { > reason => 'TOO_MANY_CHECKOUTS', > count => 1, >@@ -346,8 +389,11 @@ subtest '1 Issuingrule exist: 1 CO allowed, 1 OSCO allowed, Do a OSCO' => sub { > }, > 'CO should not be allowed if ConsiderOnSiteCheckoutsAsNormalCheckouts == 1' > ); >+ $data = C4::Circulation::TooMany( $patron, $item, { onsite_checkout => 1 } ); >+ $rule = delete $data->{circulation_rule}; >+ is( ref $rule, 'Koha::CirculationRule', 'Circulation rule was returned' ); > is_deeply( >- C4::Circulation::TooMany( $patron, $item, { onsite_checkout => 1 } ), >+ $data, > { > reason => 'TOO_MANY_ONSITE_CHECKOUTS', > count => 1, >@@ -363,7 +409,7 @@ subtest '1 BranchBorrowerCircRule exist: 1 CO allowed, 1 OSCO allowed' => sub { > # Note: the same test coul be done for > # DefaultBorrowerCircRule, DefaultBranchCircRule, DefaultBranchItemRule ans DefaultCircRule.pm > >- plan tests => 10; >+ plan tests => 18; > Koha::CirculationRules->set_rules( > { > branchcode => $branch->{branchcode}, >@@ -380,8 +426,11 @@ subtest '1 BranchBorrowerCircRule exist: 1 CO allowed, 1 OSCO allowed' => sub { > like( $issue->issue_id, qr|^\d+$|, 'The issue should have been inserted' ); > > t::lib::Mocks::mock_preference('ConsiderOnSiteCheckoutsAsNormalCheckouts', 0); >+ my $data = C4::Circulation::TooMany( $patron, $item ); >+ my $rule = delete $data->{circulation_rule}; >+ is( ref $rule, 'Koha::CirculationRule', 'Circulation rule was returned' ); > is_deeply( >- C4::Circulation::TooMany( $patron, $item ), >+ $data, > { > reason => 'TOO_MANY_CHECKOUTS', > count => 1, >@@ -389,15 +438,21 @@ subtest '1 BranchBorrowerCircRule exist: 1 CO allowed, 1 OSCO allowed' => sub { > }, > 'CO should be allowed if ConsiderOnSiteCheckoutsAsNormalCheckouts == 0' > ); >- is( >- C4::Circulation::TooMany( $patron, $item, { onsite_checkout => 1 } ), >- undef, >+ $data = C4::Circulation::TooMany( $patron, $item, { onsite_checkout => 1 } ), >+ $rule = delete $data->{circulation_rule}; >+ is( ref $rule, '', 'No circulation rule was returned' ); >+ is_deeply( >+ $data, >+ {}, > 'OSCO should not be allowed if ConsiderOnSiteCheckoutsAsNormalCheckouts == 0' > ); > > t::lib::Mocks::mock_preference('ConsiderOnSiteCheckoutsAsNormalCheckouts', 1); >+ $data = C4::Circulation::TooMany( $patron, $item ); >+ $rule = delete $data->{circulation_rule}; >+ is( ref $rule, 'Koha::CirculationRule', 'Circulation rule was returned' ); > is_deeply( >- C4::Circulation::TooMany( $patron, $item ), >+ $data, > { > reason => 'TOO_MANY_CHECKOUTS', > count => 1, >@@ -405,8 +460,11 @@ subtest '1 BranchBorrowerCircRule exist: 1 CO allowed, 1 OSCO allowed' => sub { > }, > 'CO should not be allowed if ConsiderOnSiteCheckoutsAsNormalCheckouts == 1' > ); >+ $data = C4::Circulation::TooMany( $patron, $item, { onsite_checkout => 1 } ), >+ $rule = delete $data->{circulation_rule}; >+ is( ref $rule, 'Koha::CirculationRule', 'Circulation rule was returned' ); > is_deeply( >- C4::Circulation::TooMany( $patron, $item, { onsite_checkout => 1 } ), >+ $data, > { > reason => 'TOO_MANY_CHECKOUTS', > count => 1, >@@ -432,13 +490,19 @@ subtest '1 BranchBorrowerCircRule exist: 1 CO allowed, 1 OSCO allowed' => sub { > like( $issue->issue_id, qr|^\d+$|, 'The issue should have been inserted' ); > > t::lib::Mocks::mock_preference('ConsiderOnSiteCheckoutsAsNormalCheckouts', 0); >+ $data = C4::Circulation::TooMany( $patron, $item ); >+ $rule = delete $data->{circulation_rule}; >+ is( ref $rule, '', 'No circulation rule was returned' ); > is( >- C4::Circulation::TooMany( $patron, $item ), >- undef, >+ keys %$data, >+ 0, > 'CO should be allowed if ConsiderOnSiteCheckoutsAsNormalCheckouts == 0' > ); >+ $data = C4::Circulation::TooMany( $patron, $item, { onsite_checkout => 1 } ), >+ $rule = delete $data->{circulation_rule}; >+ is( ref $rule, 'Koha::CirculationRule', 'Circulation rule was returned' ); > is_deeply( >- C4::Circulation::TooMany( $patron, $item, { onsite_checkout => 1 } ), >+ $data, > { > reason => 'TOO_MANY_ONSITE_CHECKOUTS', > count => 1, >@@ -448,8 +512,11 @@ subtest '1 BranchBorrowerCircRule exist: 1 CO allowed, 1 OSCO allowed' => sub { > ); > > t::lib::Mocks::mock_preference('ConsiderOnSiteCheckoutsAsNormalCheckouts', 1); >+ $data = C4::Circulation::TooMany( $patron, $item ); >+ $rule = delete $data->{circulation_rule}; >+ is( ref $rule, 'Koha::CirculationRule', 'Circulation rule was returned' ); > is_deeply( >- C4::Circulation::TooMany( $patron, $item ), >+ $data, > { > reason => 'TOO_MANY_CHECKOUTS', > count => 1, >@@ -457,8 +524,11 @@ subtest '1 BranchBorrowerCircRule exist: 1 CO allowed, 1 OSCO allowed' => sub { > }, > 'CO should not be allowed if ConsiderOnSiteCheckoutsAsNormalCheckouts == 1' > ); >+ $data = C4::Circulation::TooMany( $patron, $item, { onsite_checkout => 1 } ), >+ $rule = delete $data->{circulation_rule}; >+ is( ref $rule, 'Koha::CirculationRule', 'Circulation rule was returned' ); > is_deeply( >- C4::Circulation::TooMany( $patron, $item, { onsite_checkout => 1 } ), >+ $data, > { > reason => 'TOO_MANY_ONSITE_CHECKOUTS', > count => 1, >@@ -471,7 +541,7 @@ subtest '1 BranchBorrowerCircRule exist: 1 CO allowed, 1 OSCO allowed' => sub { > }; > > subtest 'General vs specific rules limit quantity correctly' => sub { >- plan tests => 10; >+ plan tests => 18; > > t::lib::Mocks::mock_preference('CircControl', 'ItemHomeLibrary'); > my $branch = $builder->build({source => 'Branch',}); >@@ -547,8 +617,11 @@ subtest 'General vs specific rules limit quantity correctly' => sub { > t::lib::Mocks::mock_userenv({ branchcode => $branch->{branchcode} }); > my $issue = C4::Circulation::AddIssue( $patron, $issue_item->barcode, dt_from_string() ); > # We checkout one item >+ my $data = C4::Circulation::TooMany( $patron, $branch_item ); >+ my $rule = delete $data->{circulation_rule}; >+ is( ref $rule, 'Koha::CirculationRule', 'Circulation rule was returned' ); > is_deeply( >- C4::Circulation::TooMany( $patron, $branch_item ), >+ $data, > { > reason => 'TOO_MANY_CHECKOUTS', > count => 1, >@@ -562,8 +635,11 @@ subtest 'General vs specific rules limit quantity correctly' => sub { > $issue_item->biblio->biblioitem->itemtype($itemtype->{itemtype})->store; > $branch_item->biblio->biblioitem->itemtype($itemtype->{itemtype})->store; > # We checkout one item >+ $data = C4::Circulation::TooMany( $patron, $branch_item ); >+ $rule = delete $data->{circulation_rule}; >+ is( ref $rule, 'Koha::CirculationRule', 'Circulation rule was returned' ); > is_deeply( >- C4::Circulation::TooMany( $patron, $branch_item ), >+ $data, > { > reason => 'TOO_MANY_CHECKOUTS', > count => 1, >@@ -596,8 +672,11 @@ subtest 'General vs specific rules limit quantity correctly' => sub { > > # If circcontrol is PatronLibrary we count all the patron's loan, regardless of branch > t::lib::Mocks::mock_preference('CircControl', 'PatronLibrary'); >+ $data = C4::Circulation::TooMany( $patron, $branch_item ); >+ $rule = delete $data->{circulation_rule}; >+ is( ref $rule, 'Koha::CirculationRule', 'Circulation rule was returned' ); > is_deeply( >- C4::Circulation::TooMany( $patron, $branch_item ), >+ $data, > { > reason => 'TOO_MANY_CHECKOUTS', > count => 1, >@@ -615,8 +694,11 @@ subtest 'General vs specific rules limit quantity correctly' => sub { > homebranch => $branch->{branchcode}, > holdingbranch => $branch->{branchcode} > }); >+ $data = C4::Circulation::TooMany( $patron, $branch_item_2 ); >+ $rule = delete $data->{circulation_rule}; >+ is( ref $rule, 'Koha::CirculationRule', 'Circulation rule was returned' ); > is_deeply( >- C4::Circulation::TooMany( $patron, $branch_item_2 ), >+ $data, > { > reason => 'TOO_MANY_CHECKOUTS', > count => 1, >@@ -629,8 +711,11 @@ subtest 'General vs specific rules limit quantity correctly' => sub { > my $item_2 = $builder->build_sample_item({ > itype => $itemtype->{itemtype}, > }); >+ $data = C4::Circulation::TooMany( $patron, $item_2 ); >+ $rule = delete $data->{circulation_rule}; >+ is( ref $rule, 'Koha::CirculationRule', 'Circulation rule was returned' ); > is_deeply( >- C4::Circulation::TooMany( $patron, $item_2 ), >+ $data, > { > reason => 'TOO_MANY_CHECKOUTS', > count => 2, >@@ -639,8 +724,11 @@ subtest 'General vs specific rules limit quantity correctly' => sub { > 'We are only allowed one for general rule, and have two' > ); > t::lib::Mocks::mock_preference('CircControl', 'PatronLibrary'); >+ $data = C4::Circulation::TooMany( $patron, $item_2 ); >+ $rule = delete $data->{circulation_rule}; >+ is( ref $rule, 'Koha::CirculationRule', 'Circulation rule was returned' ); > is_deeply( >- C4::Circulation::TooMany( $patron, $item_2 ), >+ $data, > { > reason => 'TOO_MANY_CHECKOUTS', > count => 2, >@@ -650,8 +738,11 @@ subtest 'General vs specific rules limit quantity correctly' => sub { > ); > > t::lib::Mocks::mock_preference('CircControl', 'PickupLibrary'); >+ $data = C4::Circulation::TooMany( $patron, $item_2 ); >+ $rule = delete $data->{circulation_rule}; >+ is( ref $rule, 'Koha::CirculationRule', 'Circulation rule was returned' ); > is_deeply( >- C4::Circulation::TooMany( $patron, $item_2 ), >+ $data, > { > reason => 'TOO_MANY_CHECKOUTS', > count => 2, >@@ -661,8 +752,11 @@ subtest 'General vs specific rules limit quantity correctly' => sub { > ); > > t::lib::Mocks::mock_userenv({ branchcode => $branch2->{branchcode} }); >+ $data = C4::Circulation::TooMany( $patron, $item_2 ); >+ $rule = delete $data->{circulation_rule}; >+ is( ref $rule, 'Koha::CirculationRule', 'Circulation rule was returned' ); > is_deeply( >- C4::Circulation::TooMany( $patron, $item_2 ), >+ $data, > { > reason => 'TOO_MANY_CHECKOUTS', > count => 2, >@@ -718,7 +812,7 @@ subtest 'empty string means unlimited' => sub { > }; > > subtest 'itemtype group tests' => sub { >- plan tests => 13; >+ plan tests => 17; > > t::lib::Mocks::mock_preference( 'CircControl', 'ItemHomeLibrary' ); > Koha::CirculationRules->set_rules( >@@ -844,8 +938,11 @@ subtest 'itemtype group tests' => sub { > } > ); > >+ my $data = C4::Circulation::TooMany( $patron, $item ); >+ my $rule = delete $data->{circulation_rule}; >+ is( ref $rule, 'Koha::CirculationRule', 'Circulation rule was returned' ); > is_deeply( >- C4::Circulation::TooMany( $patron, $item ), >+ $data, > { > reason => 'TOO_MANY_CHECKOUTS', > count => 1, >@@ -885,8 +982,11 @@ subtest 'itemtype group tests' => sub { > > #patron has 1 checkout of childitype1 and 1 checkout of childitype2 > >+ $data = C4::Circulation::TooMany( $patron, $item ); >+ $rule = delete $data->{circulation_rule}; >+ is( ref $rule, 'Koha::CirculationRule', 'Circulation rule was returned' ); > is_deeply( >- C4::Circulation::TooMany( $patron, $item ), >+ $data, > { > reason => 'TOO_MANY_CHECKOUTS', > count => 2, >@@ -903,8 +1003,11 @@ subtest 'itemtype group tests' => sub { > } > ); > >+ $data = C4::Circulation::TooMany( $patron, $parent_item ); >+ $rule = delete $data->{circulation_rule}; >+ is( ref $rule, 'Koha::CirculationRule', 'Circulation rule was returned' ); > is_deeply( >- C4::Circulation::TooMany( $patron, $parent_item ), >+ $data, > { > reason => 'TOO_MANY_CHECKOUTS', > count => 2, >@@ -968,8 +1071,11 @@ subtest 'itemtype group tests' => sub { > > #patron has 1 checkout of childitype 1 and 3 of childitype2 > >+ $data = C4::Circulation::TooMany( $patron, $item_3 ); >+ $rule = delete $data->{circulation_rule}; >+ is( ref $rule, 'Koha::CirculationRule', 'Circulation rule was returned' ); > is_deeply( >- C4::Circulation::TooMany( $patron, $item_3 ), >+ $data, > { > reason => 'TOO_MANY_CHECKOUTS', > max_allowed => 4, >@@ -982,7 +1088,7 @@ subtest 'itemtype group tests' => sub { > }; > > subtest 'HomeOrHoldingBranch is used' => sub { >- plan tests => 2; >+ plan tests => 4; > > t::lib::Mocks::mock_preference( 'CircControl', 'ItemHomeLibrary' ); > >@@ -1020,8 +1126,11 @@ subtest 'HomeOrHoldingBranch is used' => sub { > > t::lib::Mocks::mock_preference('HomeOrHoldingBranch', 'homebranch'); > >+ my $data = C4::Circulation::TooMany( $patron, $item_1 ); >+ my $rule = delete $data->{circulation_rule}; >+ is( ref $rule, 'Koha::CirculationRule', 'Circulation rule was returned' ); > is_deeply( >- C4::Circulation::TooMany( $patron, $item_1 ), >+ $data, > { > reason => 'TOO_MANY_CHECKOUTS', > max_allowed => 0, >@@ -1032,8 +1141,11 @@ subtest 'HomeOrHoldingBranch is used' => sub { > > t::lib::Mocks::mock_preference('HomeOrHoldingBranch', 'holdingbranch'); > >+ $data = C4::Circulation::TooMany( $patron, $item_1 ); >+ $rule = delete $data->{circulation_rule}; >+ is( ref $rule, 'Koha::CirculationRule', 'Circulation rule was returned' ); > is_deeply( >- C4::Circulation::TooMany( $patron, $item_1 ), >+ $data, > { > reason => 'TOO_MANY_CHECKOUTS', > max_allowed => 1, >-- >2.43.0
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
|
Splinter Review
Attachments on
bug 18139
:
60427
|
60428
|
60429
|
61489
|
61490
|
61491
|
61541
|
61542
|
61543
|
61663
|
159307
|
159308
|
159522
|
159523
|
159728
|
159729
|
159740
|
159904
|
159905
|
159906
|
159907