in component-test/src/main/java/org/apache/fineract/cn/portfolio/TestAccountingInteractionInLoanWorkflow.java [815:856]
private void step4ApproveCase(final LocalDateTime forDateTime) throws InterruptedException
{
logger.info("step4ApproveCase");
markTaskExecuted(product, customerCase, taskDefinition);
checkCostComponentForActionCorrect(
product.getIdentifier(),
customerCase.getIdentifier(),
Action.APPROVE,
null,
null,
forDateTime,
MINOR_CURRENCY_UNIT_DIGITS);
checkStateTransfer(
product.getIdentifier(),
customerCase.getIdentifier(),
Action.APPROVE,
forDateTime,
assignEntry(AccountingFixture.CUSTOMERS_DEPOSIT_ACCOUNT),
IndividualLoanEventConstants.APPROVE_INDIVIDUALLOAN_CASE,
Case.State.APPROVED);
checkNextActionsCorrect(product.getIdentifier(), customerCase.getIdentifier(), Action.DISBURSE, Action.CLOSE);
final String customerLoanLedgerIdentifier = AccountingFixture.verifyLedgerCreation(
ledgerManager,
AccountingFixture.CUSTOMER_LOAN_LEDGER_IDENTIFIER,
AccountType.ASSET);
customerLoanPrincipalIdentifier =
AccountingFixture.verifyAccountCreationMatchingDesignator(ledgerManager, customerLoanLedgerIdentifier, AccountDesignators.CUSTOMER_LOAN_PRINCIPAL, AccountType.ASSET);
customerLoanInterestIdentifier =
AccountingFixture.verifyAccountCreationMatchingDesignator(ledgerManager, customerLoanLedgerIdentifier, AccountDesignators.CUSTOMER_LOAN_INTEREST, AccountType.ASSET);
customerLoanFeeIdentifier =
AccountingFixture.verifyAccountCreationMatchingDesignator(ledgerManager, customerLoanLedgerIdentifier, AccountDesignators.CUSTOMER_LOAN_FEES, AccountType.ASSET);
expectedCurrentPrincipal = BigDecimal.ZERO;
interestAccrued = BigDecimal.ZERO;
nonLateFees = BigDecimal.ZERO;
lateFees = BigDecimal.ZERO;
updateBalanceMock();
}