FINERACT-2317: Include capitalized income and buy down fee in available disbursement calculation

This commit is contained in:
Oleksii Novikov
2025-08-06 09:19:23 +02:00
committed by Adam Saghy
parent 9f53440543
commit 25b440b842
4 changed files with 33 additions and 18 deletions
@@ -100,6 +100,7 @@ import org.apache.fineract.portfolio.loanaccount.service.LoanChargeService;
import org.apache.fineract.portfolio.loanaccount.service.LoanReadPlatformService;
import org.apache.fineract.portfolio.loanaccount.service.LoanTransactionProcessingService;
import org.apache.fineract.portfolio.loanproduct.domain.LoanProduct;
import org.apache.fineract.portfolio.loanproduct.domain.LoanProductRelatedDetail;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
@@ -367,9 +368,14 @@ public class LoanAccountDelinquencyRangeEventSerializerTest {
LoanProduct loanProduct = Mockito.mock(LoanProduct.class);
when(loanProduct.isMultiDisburseLoan()).thenReturn(false);
LoanProductRelatedDetail loanProductRelatedDetail = Mockito.mock(LoanProductRelatedDetail.class);
when(loanProductRelatedDetail.isEnableIncomeCapitalization()).thenReturn(false);
Loan loan = Mockito.spy(Loan.class);
ReflectionTestUtils.setField(loan, "loanProduct", loanProduct);
ReflectionTestUtils.setField(loan, "loanStatus", LoanStatus.ACTIVE);
when(loan.getLoanRepaymentScheduleDetail()).thenReturn(loanProductRelatedDetail);
LoanTransaction transaction1 = Mockito.mock(LoanTransaction.class);
LoanTransaction transaction2 = Mockito.mock(LoanTransaction.class);
CollectionData collectionData = Mockito.mock(CollectionData.class);