From b3c199e7a0e4b1a9f97c15b7bbda6d7e11e876f4 Mon Sep 17 00:00:00 2001
From: Kyle M Hall <kyle@bywatersolutions.com>
Date: Thu, 7 May 2020 14:21:59 -0400
Subject: [PATCH] Bug 25417: Add unit test
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Didier Gautheron <didier.gautheron@biblibre.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
---
t/db_dependent/Circulation.t | 17 ++++++++++++++++-
1 file changed, 16 insertions(+), 1 deletion(-)
diff --git a/t/db_dependent/Circulation.t b/t/db_dependent/Circulation.t
index 7ae3b9f694..d769a67d1f 100755
--- a/t/db_dependent/Circulation.t
+++ b/t/db_dependent/Circulation.t
@@ -2827,7 +2827,7 @@ subtest '_FixAccountForLostAndFound' => sub {
};
subtest '_FixOverduesOnReturn' => sub {
- plan tests => 11;
+ plan tests => 12;
my $manager = $builder->build_object({ class => "Koha::Patrons" });
t::lib::Mocks::mock_userenv({ patron => $manager, branchcode => $manager->branchcode });
@@ -2891,6 +2891,21 @@ subtest '_FixOverduesOnReturn' => sub {
is( ref $credit, "Koha::Account::Line", "Found matching credit for fine forgiveness" );
is( $credit->amount + 0, -99, "Credit amount is set correctly" );
is( $credit->amountoutstanding + 0, 0, "Credit amountoutstanding is correctly set to 0" );
+ $offset->delete;
+
+ $accountline->set(
+ {
+ debit_type_code => 'OVERDUE',
+ status => 'UNRETURNED',
+ amountoutstanding => 0.00,
+ }
+ )->store();
+
+ C4::Circulation::_FixOverduesOnReturn( $patron->{borrowernumber}, $item->itemnumber, 1, 'RETURNED' );
+
+ $accountline->_result()->discard_changes();
+ $offset = Koha::Account::Offsets->search({ debit_id => $accountline->id, type => 'Forgiven' })->next();
+ is( $offset, undef, "No offset created when trying to forgive fine with no outstanding balance" );
};
subtest '_FixAccountForLostAndFound returns undef if patron is deleted' => sub {
--
2.24.2 (Apple Git-127)