Skip to content
Merged
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 @@ -81,7 +81,8 @@ public Long insertLoan(final LoanStatus status, final LocalDate lastClosedBusine
.addValue("principal", DEFAULT_PRINCIPAL)//
.addValue("principal_amount_proposed", DEFAULT_PRINCIPAL)//
.addValue("approved_principal", DEFAULT_PRINCIPAL)//
.addValue("total_payment_volume", DEFAULT_PRINCIPAL);
.addValue("total_payment_volume", DEFAULT_PRINCIPAL)//
.addValue("breach_start_type", "DISBURSEMENT");
final Number key = wcLoanInsert.executeAndReturnKey(params);
return Objects.requireNonNull(key, "Generated key must not be null").longValue();
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -206,15 +206,20 @@ public void createWorkingCapitalLoanWithFund(final DataTable table) {

@When("Admin creates a working capital loan using created product with the following data:")
public void createWorkingCapitalLoanUsingCreatedProduct(final DataTable table) {
submitLoanUsingCreatedProduct(table, null);
submitLoanUsingCreatedProduct(table, null, null);
}

@When("Admin creates a working capital loan using created product with breachGraceDays {int} and the following data:")
public void createWorkingCapitalLoanUsingCreatedProductWithBreachGraceDays(final int breachGraceDays, final DataTable table) {
submitLoanUsingCreatedProduct(table, breachGraceDays);
submitLoanUsingCreatedProduct(table, breachGraceDays, null);
}

private void submitLoanUsingCreatedProduct(final DataTable table, final Integer breachGraceDays) {
@When("Admin creates a working capital loan using created product with breachStartType {string} and the following data:")
public void createWorkingCapitalLoanUsingCreatedProductWithBreachStartType(final String breachStartType, final DataTable table) {
submitLoanUsingCreatedProduct(table, null, breachStartType);
}

private void submitLoanUsingCreatedProduct(final DataTable table, final Integer breachGraceDays, final String breachStartType) {
final List<List<String>> data = table.asLists();
final List<String> rawData = data.get(1);
final Long clientId = extractClientId();
Expand All @@ -237,6 +242,9 @@ private void submitLoanUsingCreatedProduct(final DataTable table, final Integer
if (breachGraceDays != null) {
loansRequest.breachGraceDays(breachGraceDays);
}
if (breachStartType != null) {
loansRequest.breachStartType(breachStartType);
}
testContext().set(TestContextKey.LOAN_CREATE_REQUEST, loansRequest);

final PostWorkingCapitalLoansResponse response = ok(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -122,6 +122,7 @@ public class WorkingCapitalStepDef extends AbstractStepDef {
public static final String DELINQUENCY_START_TYPE_FIELD_NAME = "delinquencyStartType";
public static final String BREACH_GRACE_DAYS_FIELD_NAME = "breachGraceDays";
public static final String BREACH_ID_FIELD_NAME = "breachId";
public static final String BREACH_START_TYPE_FIELD_NAME = "breachStartType";
public static final String NEAR_BREACH_ID_FIELD_NAME = "nearBreachId";
public static final String LOCALE_FIELD_NAME = "locale";

Expand Down Expand Up @@ -343,14 +344,17 @@ public void createWorkingCapitalLoanProductWithCustomBreachConfig(final DataTabl
final String breachGraceDaysStr = data.get(BREACH_GRACE_DAYS_FIELD_NAME);
final Integer breachGraceDays = breachGraceDaysStr != null && !breachGraceDaysStr.isEmpty() ? Integer.valueOf(breachGraceDaysStr)
: null;
final String breachStartTypeStr = data.get(BREACH_START_TYPE_FIELD_NAME);
final String breachStartType = breachStartTypeStr != null && !breachStartTypeStr.isEmpty() ? breachStartTypeStr : null;

final String name = DefaultWorkingCapitalLoanProduct.WCLP.getName() + Utils.randomStringGenerator("_", RANDOM_NAME_SUFFIX_LENGTH);
final PostWorkingCapitalLoanProductsRequest request = workingCapitalRequestFactory
.defaultWorkingCapitalLoanProductAllowAttributesOverrideRequest() //
.name(name) //
.breachId(breachId) //
.delinquencyGraceDays(graceDays) //
.breachGraceDays(breachGraceDays);
.breachGraceDays(breachGraceDays) //
.breachStartType(breachStartType);

final PostWorkingCapitalLoanProductsResponse response = createWorkingCapitalLoanProduct(request);
testContext().set(TestContextKey.WORKING_CAPITAL_LOAN_PRODUCT_CREATE_RESPONSE, response);
Expand Down Expand Up @@ -387,6 +391,8 @@ public void createWorkingCapitalLoanProductWithBreachAndNearBreachConfig(final D
final String breachGraceDaysStr = data.get(BREACH_GRACE_DAYS_FIELD_NAME);
final Integer breachGraceDays = breachGraceDaysStr != null && !breachGraceDaysStr.isEmpty() ? Integer.valueOf(breachGraceDaysStr)
: null;
final String breachStartTypeStr = data.get(BREACH_START_TYPE_FIELD_NAME);
final String breachStartType = breachStartTypeStr != null && !breachStartTypeStr.isEmpty() ? breachStartTypeStr : null;

final String name = DefaultWorkingCapitalLoanProduct.WCLP.getName() + Utils.randomStringGenerator("_", RANDOM_NAME_SUFFIX_LENGTH);
final PostWorkingCapitalLoanProductsRequest request = workingCapitalRequestFactory
Expand All @@ -395,7 +401,8 @@ public void createWorkingCapitalLoanProductWithBreachAndNearBreachConfig(final D
.breachId(breachId) //
.nearBreachId(nearBreachId) //
.delinquencyGraceDays(graceDays) //
.breachGraceDays(breachGraceDays);
.breachGraceDays(breachGraceDays) //
.breachStartType(breachStartType);

final PostWorkingCapitalLoanProductsResponse response = createWorkingCapitalLoanProduct(request);
testContext().set(TestContextKey.WORKING_CAPITAL_LOAN_PRODUCT_CREATE_RESPONSE, response);
Expand Down
Loading
Loading