To test: 1 - Find a title in the catalog, add 8 items, all of a single itemtype, 4 for branch A, four for branch B 2 - Remove any specific circ rules 3 - Set a default circ rule for the itemtype used above, limiting the max issue quantity to 3 4 - Find a patron and checkout the items from branch A 5 - You should be allowed ot checkout 3, but the fourth should trigger 'too many' 6 - Now checkout the items from branch B, again you can checkout 3 and not four 7 - You shouldn't be allowed 3 from each library :-(
Created attachment 88530 [details] [review] Bug 22759: Unit tests To test: 1 - Apply only this patch 2 - prove -v t/db_dependent/Circulation/TooMany.t 3 - It fails 4 - Apply second path 5 - repeat 6 - All green!
Created attachment 88531 [details] [review] Bug 22759: Fix wrong check of branch rule in C4::Circulation::TooMany The condition in TooMany applied branch limits only if the rule didn't have a branchcode, this was wrong To test: 1 - Find a title in the catalog, add 8 items, all of a single itemtype, 4 for branch A, four for branch B 2 - Remove any specific circ rules 3 - Set a default circ rule for the itemtype used above, limiting the max issue quantity to 3 4 - Find a patron and checkout the items from branch A 5 - You should be allowed to checkout 3, but the fourth should trigger 'too many' 6 - Now checkout the items from branch B, again you can checkout 3 and not four 7 - Apply this patch 8 - Assuming you have 6 items out now, try one from either branch, you should trigger 'too many' and have 6 9 - Return two from branch B and one from branch A 10 - Now you have three items issued total 11 - An item from either branch should be refused now 12 - Test with different values of 'CircControl' and confirm your expectations are met
Created attachment 88538 [details] [review] Bug 22759: Unit tests To test: 1 - Apply only this patch 2 - prove -v t/db_dependent/Circulation/TooMany.t 3 - It fails 4 - Apply second path 5 - repeat 6 - All green! Signed-off-by: Liz Rea <wizzyrea@gmail.com> this is much much better.
Created attachment 88540 [details] [review] Bug 22759: Fix wrong check of branch rule in C4::Circulation::TooMany The condition in TooMany applied branch limits only if the rule didn't have a branchcode, this was wrong To test: 1 - Find a title in the catalog, add 8 items, all of a single itemtype, 4 for branch A, four for branch B 2 - Remove any specific circ rules 3 - Set a default circ rule for the itemtype used above, limiting the max issue quantity to 3 4 - Find a patron and checkout the items from branch A 5 - You should be allowed to checkout 3, but the fourth should trigger 'too many' 6 - Now checkout the items from branch B, again you can checkout 3 and not four 7 - Apply this patch 8 - Assuming you have 6 items out now, try one from either branch, you should trigger 'too many' and have 6 9 - Return two from branch B and one from branch A 10 - Now you have three items issued total 11 - An item from either branch should be refused now 12 - Test with different values of 'CircControl' and confirm your expectations are met Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Created attachment 88565 [details] [review] Bug 22759: Unit tests To test: 1 - Apply only this patch 2 - prove -v t/db_dependent/Circulation/TooMany.t 3 - It fails 4 - Apply second path 5 - repeat 6 - All green! Signed-off-by: Liz Rea <wizzyrea@gmail.com> Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Created attachment 88566 [details] [review] Bug 22759: Fix wrong check of branch rule in C4::Circulation::TooMany The condition in TooMany applied branch limits only if the rule didn't have a branchcode, this was wrong To test: 1 - Find a title in the catalog, add 8 items, all of a single itemtype, 4 for branch A, four for branch B 2 - Remove any specific circ rules 3 - Set a default circ rule for the itemtype used above, limiting the max issue quantity to 3 4 - Find a patron and checkout the items from branch A 5 - You should be allowed to checkout 3, but the fourth should trigger 'too many' 6 - Now checkout the items from branch B, again you can checkout 3 and not four 7 - Apply this patch 8 - Assuming you have 6 items out now, try one from either branch, you should trigger 'too many' and have 6 9 - Return two from branch B and one from branch A 10 - Now you have three items issued total 11 - An item from either branch should be refused now 12 - Test with different values of 'CircControl' and confirm your expectations are met Signed-off-by: Liz Rea <wizzyrea@gmail.com> Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Awesome work all! Pushed to master for 19.05
Bug in enhancement not in 18.11.x series.