[FINERACT-1678] Loan COB - skip non-owned locked loan accounts

This commit is contained in:
taskain7
2022-11-14 11:18:56 +01:00
committed by Arnold Gálovics
parent 1cf37341d5
commit c9a4aab466
8 changed files with 36 additions and 40 deletions
@@ -73,14 +73,14 @@ public class ApplyLoanLockTaskletStepDefinitions implements En {
Then("ApplyLoanLockTasklet.execute result should match", () -> {
assertEquals(RepeatStatus.FINISHED, resultItem);
assertEquals(3L,
((List) stepContribution.getStepExecution().getExecutionContext().get(LoanCOBConstant.ALREADY_LOCKED_LOAN_IDS)).get(0));
verify(this.accountLockRepository, Mockito.times(2)).save(valueCaptor.capture());
assertEquals(3L, ((List) stepContribution.getStepExecution().getExecutionContext()
.get(LoanCOBConstant.ALREADY_LOCKED_BY_INLINE_COB_OR_PROCESSED_LOAN_IDS)).get(0));
assertEquals(4L, ((List) stepContribution.getStepExecution().getExecutionContext()
.get(LoanCOBConstant.ALREADY_LOCKED_BY_INLINE_COB_OR_PROCESSED_LOAN_IDS)).get(1));
verify(this.accountLockRepository, Mockito.times(1)).save(valueCaptor.capture());
List<LoanAccountLock> values = valueCaptor.getAllValues();
assertEquals(2L, values.get(0).getLoanId());
assertEquals(LockOwner.LOAN_COB_CHUNK_PROCESSING, values.get(0).getLockOwner());
assertEquals(4L, values.get(1).getLoanId());
assertEquals(LockOwner.LOAN_COB_CHUNK_PROCESSING, values.get(1).getLockOwner());
});
Then("throw exception ApplyLoanLockTasklet.execute method", () -> {
@@ -57,7 +57,8 @@ public class LoanItemReaderStepDefinitions implements En {
List<String> splitLockedAccountsStr = Splitter.on(',').splitToList(lockedAccounts);
splitLockedAccounts = splitLockedAccountsStr.stream().map(Long::parseLong).toList();
}
jobExecutionContext.put(LoanCOBConstant.ALREADY_LOCKED_LOAN_IDS, new ArrayList<>(splitLockedAccounts));
jobExecutionContext.put(LoanCOBConstant.ALREADY_LOCKED_BY_INLINE_COB_OR_PROCESSED_LOAN_IDS,
new ArrayList<>(splitLockedAccounts));
jobExecution.setExecutionContext(jobExecutionContext);
StepExecution stepExecution = new StepExecution("test", jobExecution);
ExecutionContext stepExecutionContext = new ExecutionContext();