From 68d49817a1da8bdd42502d86fb51c7d8df3289eb Mon Sep 17 00:00:00 2001 From: Deepesh Garg Date: Tue, 28 Dec 2021 18:10:52 +0530 Subject: [PATCH] fix: Add test for loan repayment cancellation --- erpnext/loan_management/doctype/loan/test_loan.py | 8 ++++++++ .../doctype/loan_repayment/loan_repayment.py | 2 +- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/erpnext/loan_management/doctype/loan/test_loan.py b/erpnext/loan_management/doctype/loan/test_loan.py index b232b8761c..1676c218c8 100644 --- a/erpnext/loan_management/doctype/loan/test_loan.py +++ b/erpnext/loan_management/doctype/loan/test_loan.py @@ -218,6 +218,14 @@ class TestLoan(unittest.TestCase): self.assertEqual(flt(loan.total_principal_paid, 0), flt(repayment_entry.amount_paid - penalty_amount - total_interest_paid, 0)) + # Check Repayment Entry cancel + repayment_entry.load_from_db() + repayment_entry.cancel() + + loan.load_from_db() + self.assertEqual(loan.total_principal_paid, 0) + self.assertEqual(loan.total_principal_paid, 0) + def test_loan_closure(self): pledge = [{ "loan_security": "Test Security 1", diff --git a/erpnext/loan_management/doctype/loan_repayment/loan_repayment.py b/erpnext/loan_management/doctype/loan_repayment/loan_repayment.py index f7d9e6602e..2abb3957b2 100644 --- a/erpnext/loan_management/doctype/loan_repayment/loan_repayment.py +++ b/erpnext/loan_management/doctype/loan_repayment/loan_repayment.py @@ -134,7 +134,7 @@ class LoanRepayment(AccountsController): }) pending_principal_amount = get_pending_principal_amount(loan) - if not loan.is_secured_loan and pending_principal_amount < 0: + if not loan.is_secured_loan and pending_principal_amount <= 0: loan.update({'status': 'Loan Closure Requested'}) for payment in self.repayment_details: