Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -39,15 +39,15 @@
import org.apache.fineract.avro.loan.v1.LoanTransactionDataV1;
import org.apache.fineract.avro.workingcapitalloan.v1.WorkingCapitalLoanTransactionDataV1;
import org.apache.fineract.client.feign.FineractFeignClient;
import org.apache.fineract.client.models.ExternalTransferData;
import org.apache.fineract.client.models.ExternalTransferResponse;
import org.apache.fineract.client.models.GetClientsClientIdResponse;
import org.apache.fineract.client.models.GetLoansLoanIdDelinquencyPausePeriod;
import org.apache.fineract.client.models.GetLoansLoanIdResponse;
import org.apache.fineract.client.models.GetLoansLoanIdTransactions;
import org.apache.fineract.client.models.GetWorkingCapitalLoanTransactionIdResponse;
import org.apache.fineract.client.models.GetWorkingCapitalLoansLoanIdResponse;
import org.apache.fineract.client.models.GlobalConfigurationPropertyData;
import org.apache.fineract.client.models.PageExternalTransferData;
import org.apache.fineract.client.models.PageExternalTransferResponse;
import org.apache.fineract.client.models.PostClientsResponse;
import org.apache.fineract.client.models.PostLoansLoanIdResponse;
import org.apache.fineract.client.models.PostLoansLoanIdTransactionsResponse;
Expand Down Expand Up @@ -211,8 +211,10 @@ private void loanAccountDataV1Check(Class<? extends AbstractLoanEvent> eventClaz
Integer actualNoTermExpected = body.getActualNoTerm();

assertThat(idActual).isEqualTo(idExpected);
assertThat(statusIdActual).isEqualTo(statusIdExpected);
assertThat(statusCodeActual).isEqualTo(statusCodeExpected);
if (!LoanBalanceChangedEvent.class.equals(eventClazz)) {
assertThat(statusIdActual).isEqualTo(statusIdExpected);
assertThat(statusCodeActual).isEqualTo(statusCodeExpected);
}
assertThat(clientIdActual).isEqualTo(clientIdExpected);
assertThat(areBigDecimalValuesEqual(principalDisbursedActual, principalDisbursedExpected)).isTrue();
assertThat(actualDisbursementDateActual).isEqualTo(actualDisbursementDateExpected);
Expand Down Expand Up @@ -399,11 +401,11 @@ public EventAssertion.EventAssertionBuilder<LoanTransactionDataV1> transactionEv

public void loanOwnershipTransferBusinessEventCheck(Long loanId, Long transferId) {
waitForTransactionCommit();
PageExternalTransferData response = ok(() -> fineractClient.externalAssetOwners().getTransfers(Map.of("loanId", loanId)));
List<ExternalTransferData> content = response.getContent();
PageExternalTransferResponse response = ok(() -> fineractClient.externalAssetOwners().getTransfers(Map.of("loanId", loanId)));
List<ExternalTransferResponse> content = response.getContent();

ExternalTransferData filtered = content.stream().filter(t -> transferId.equals(t.getTransferId())).reduce((first, second) -> second)
.orElseThrow(() -> new IllegalStateException("No element found"));
ExternalTransferResponse filtered = content.stream().filter(t -> transferId.equals(t.getTransferId()))
.reduce((first, second) -> second).orElseThrow(() -> new IllegalStateException("No element found"));

BigDecimal totalOutstandingBalanceAmountExpected = zeroConversion(filtered.getDetails().getTotalOutstanding());
BigDecimal outstandingPrincipalPortionExpected = zeroConversion(filtered.getDetails().getTotalPrincipalOutstanding());
Expand All @@ -430,11 +432,11 @@ public void loanOwnershipTransferBusinessEventCheck(Long loanId, Long transferId

public void loanOwnershipTransferBusinessEventWithStatusCheck(Long loanId, Long transferId, String transferStatus,
String transferStatusReason) {
PageExternalTransferData response = ok(() -> fineractClient.externalAssetOwners().getTransfers(Map.of("loanId", loanId)));
List<ExternalTransferData> content = response.getContent();
PageExternalTransferResponse response = ok(() -> fineractClient.externalAssetOwners().getTransfers(Map.of("loanId", loanId)));
List<ExternalTransferResponse> content = response.getContent();

ExternalTransferData filtered = content.stream().filter(t -> transferId.equals(t.getTransferId())).reduce((first, second) -> second)
.orElseThrow(() -> new IllegalStateException("No element found"));
ExternalTransferResponse filtered = content.stream().filter(t -> transferId.equals(t.getTransferId()))
.reduce((first, second) -> second).orElseThrow(() -> new IllegalStateException("No element found"));

BigDecimal totalOutstandingBalanceAmountExpected = filtered.getDetails() == null ? null
: zeroConversion(filtered.getDetails().getTotalOutstanding());
Expand Down Expand Up @@ -474,15 +476,15 @@ public void loanOwnershipTransferBusinessEventWithStatusCheck(Long loanId, Long
.isEqualTo(transferStatusReasonExpected);
}

public void loanOwnershipTransferBusinessEventWithTypeCheck(Long loanId, ExternalTransferData transferData, String transferType,
public void loanOwnershipTransferBusinessEventWithTypeCheck(Long loanId, ExternalTransferResponse transferData, String transferType,
String previousAssetOwner) {
PageExternalTransferData response = ok(() -> fineractClient.externalAssetOwners().getTransfers(Map.of("loanId", loanId)));
List<ExternalTransferData> content = response.getContent();
PageExternalTransferResponse response = ok(() -> fineractClient.externalAssetOwners().getTransfers(Map.of("loanId", loanId)));
List<ExternalTransferResponse> content = response.getContent();
Long transferId = transferData.getTransferId();
String assetOwner = transferData.getOwner() == null ? null : transferData.getOwner().getExternalId();

ExternalTransferData filtered = content.stream().filter(t -> transferId.equals(t.getTransferId())).reduce((first, second) -> second)
.orElseThrow(() -> new IllegalStateException("No element found"));
ExternalTransferResponse filtered = content.stream().filter(t -> transferId.equals(t.getTransferId()))
.reduce((first, second) -> second).orElseThrow(() -> new IllegalStateException("No element found"));

BigDecimal totalOutstandingBalanceAmountExpected = filtered.getDetails() == null ? null
: zeroConversion(filtered.getDetails().getTotalOutstanding());
Expand Down Expand Up @@ -517,11 +519,11 @@ public void loanOwnershipTransferBusinessEventWithTypeCheck(Long loanId, Externa

public void loanAccountSnapshotBusinessEventCheck(Long loanId, Long transferId) {
waitForTransactionCommit();
PageExternalTransferData response = ok(() -> fineractClient.externalAssetOwners().getTransfers(Map.of("loanId", loanId)));
List<ExternalTransferData> content = response.getContent();
PageExternalTransferResponse response = ok(() -> fineractClient.externalAssetOwners().getTransfers(Map.of("loanId", loanId)));
List<ExternalTransferResponse> content = response.getContent();

ExternalTransferData filtered = content.stream().filter(t -> transferId.equals(t.getTransferId())).reduce((first, second) -> second)
.orElseThrow(() -> new IllegalStateException("No element found"));
ExternalTransferResponse filtered = content.stream().filter(t -> transferId.equals(t.getTransferId()))
.reduce((first, second) -> second).orElseThrow(() -> new IllegalStateException("No element found"));

BigDecimal totalOutstandingBalanceAmountExpected = zeroConversion(filtered.getDetails().getTotalOutstanding());
BigDecimal outstandingInterestPortionExpected = zeroConversion(filtered.getDetails().getTotalInterestOutstanding());
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ public Class<LoanTransactionAdjustmentDataV1> getDataClass() {

@Override
public Function<LoanTransactionAdjustmentDataV1, Long> getIdExtractor() {
return loanTransactionAdjustmentDataV1 -> (Long) loanTransactionAdjustmentDataV1.getTransactionToAdjust().getId();
return loanTransactionAdjustmentDataV1 -> loanTransactionAdjustmentDataV1.getTransactionToAdjust().getId();
}

@Override
Expand Down
Loading
Loading