FINERACT-2418: add origination-api-skeleton

This commit is contained in:
Attila Budai
2026-01-21 13:13:04 +01:00
committed by Adam Saghy
parent bffa04c3e6
commit 87cad91aa8
25 changed files with 640 additions and 23 deletions
@@ -374,7 +374,7 @@ public abstract class BaseLoanIntegrationTest extends IntegrationTest {
String password = "AKleRbDhK421$";
String email = firstname + "." + lastname + "@whatever.mifos.org";
Calls.ok(fineractClient().users
.create15(new PostUsersRequest().addRolesItem(roleId).email(email).firstname(firstname).lastname(lastname)
.create16(new PostUsersRequest().addRolesItem(roleId).email(email).firstname(firstname).lastname(lastname)
.repeatPassword(password).sendPasswordToEmail(false).officeId(1L).username(userName).password(password)));
// login user
@@ -75,7 +75,7 @@ public class SavingsAccountsExternalIdTest extends IntegrationTest {
PutSavingsAccountsAccountIdRequest request = new PutSavingsAccountsAccountIdRequest();
request.setLocale(locale);
request.setNominalAnnualInterestRate(5.999);
Response<PutSavingsAccountsAccountIdResponse> response = okR(fineractClient().savingsAccounts.update21(EXTERNAL_ID, request, ""));
Response<PutSavingsAccountsAccountIdResponse> response = okR(fineractClient().savingsAccounts.update22(EXTERNAL_ID, request, ""));
assertThat(response.isSuccessful()).isTrue();
assertThat(response.body()).isNotNull();
@@ -104,7 +104,7 @@ public class SavingsAccountsExternalIdTest extends IntegrationTest {
request.dateFormat(dateFormat);
request.setLocale(locale);
request.setActivatedOnDate(formattedDate);
Response<SavingsAccountData> response = okR(fineractClient().savingsAccounts.retrieveOne26(EXTERNAL_ID, false, null, "all"));
Response<SavingsAccountData> response = okR(fineractClient().savingsAccounts.retrieveOne27(EXTERNAL_ID, false, null, "all"));
assertThat(response.isSuccessful()).isTrue();
assertThat(response.body()).isNotNull();
@@ -132,7 +132,7 @@ public class SavingsAccountsExternalIdTest extends IntegrationTest {
request.dateFormat(dateFormat);
request.setLocale(locale);
request.setActivatedOnDate(formattedDate);
Response<SavingsAccountData> response = okR(fineractClient().savingsAccounts.retrieveOne26(EXTERNAL_ID, false, null, "all"));
Response<SavingsAccountData> response = okR(fineractClient().savingsAccounts.retrieveOne27(EXTERNAL_ID, false, null, "all"));
assertThat(response.isSuccessful()).isTrue();
assertThat(response.body()).isNotNull();
@@ -147,7 +147,7 @@ public class SavingsAccountsExternalIdTest extends IntegrationTest {
request.dateFormat(dateFormat);
request.setLocale(locale);
request.setActivatedOnDate(formattedDate);
Response<DeleteSavingsAccountsAccountIdResponse> response = okR(fineractClient().savingsAccounts.delete19(EXTERNAL_ID));
Response<DeleteSavingsAccountsAccountIdResponse> response = okR(fineractClient().savingsAccounts.delete20(EXTERNAL_ID));
assertThat(response.isSuccessful()).isTrue();
assertThat(response.body()).isNotNull();
@@ -162,7 +162,7 @@ public class SavingsAccountsExternalIdTest extends IntegrationTest {
request.setLocale(locale);
request.setActivatedOnDate(formattedDate);
Response<SavingsAccountData> response = Calls
.executeU(fineractClient().savingsAccounts.retrieveOne26(EXTERNAL_ID, false, null, "all"));
.executeU(fineractClient().savingsAccounts.retrieveOne27(EXTERNAL_ID, false, null, "all"));
assertThat(response.raw().code()).isEqualTo(404);
}
@@ -202,19 +202,19 @@ public class UserAdministrationTest extends IntegrationTest {
// User updates its own password
String updatedPassword = "QwE!5rTy#9uP0u";
PutUsersUserIdResponse putUsersUserIdResponse = ok(newFineractClient(simpleUsername, originalPassword).users.update26(userId,
PutUsersUserIdResponse putUsersUserIdResponse = ok(newFineractClient(simpleUsername, originalPassword).users.update27(userId,
new PutUsersUserIdRequest().password(updatedPassword).repeatPassword(updatedPassword)));
Assertions.assertNotNull(putUsersUserIdResponse.getResourceId());
// From then on the originalPassword is not working anymore
CallFailedRuntimeException callFailedRuntimeException = Assertions.assertThrows(CallFailedRuntimeException.class, () -> {
ok(newFineractClient(simpleUsername, originalPassword).users.retrieveOne31(userId));
ok(newFineractClient(simpleUsername, originalPassword).users.retrieveOne32(userId));
});
Assertions.assertEquals(401, callFailedRuntimeException.getResponse().raw().code());
Assertions.assertTrue(callFailedRuntimeException.getMessage().contains("Unauthorized"));
// The update password is still working perfectly
GetUsersUserIdResponse ok = ok(newFineractClient(simpleUsername, updatedPassword).users.retrieveOne31(userId));
GetUsersUserIdResponse ok = ok(newFineractClient(simpleUsername, updatedPassword).users.retrieveOne32(userId));
}
@Test
@@ -242,13 +242,13 @@ public class UserAdministrationTest extends IntegrationTest {
// From then on the originalPassword is not working anymore
CallFailedRuntimeException callFailedRuntimeException = Assertions.assertThrows(CallFailedRuntimeException.class, () -> {
ok(newFineractClient(simpleUsername, originalPassword).users.retrieveOne31(userId));
ok(newFineractClient(simpleUsername, originalPassword).users.retrieveOne32(userId));
});
Assertions.assertEquals(401, callFailedRuntimeException.getResponse().raw().code());
Assertions.assertTrue(callFailedRuntimeException.getMessage().contains("Unauthorized"));
// The update password is still working perfectly
GetUsersUserIdResponse ok = ok(newFineractClient(simpleUsername, updatedPassword).users.retrieveOne31(userId));
GetUsersUserIdResponse ok = ok(newFineractClient(simpleUsername, updatedPassword).users.retrieveOne32(userId));
}
@Test
@@ -272,7 +272,7 @@ public class UserAdministrationTest extends IntegrationTest {
// User tries to update it's own roles
CallFailedRuntimeException callFailedRuntimeException = Assertions.assertThrows(CallFailedRuntimeException.class, () -> {
ok(newFineractClient(simpleUsername, password).users.update26(userId,
ok(newFineractClient(simpleUsername, password).users.update27(userId,
new PutUsersUserIdRequest().roles(List.of(Long.valueOf(roleId2)))));
});
@@ -65,7 +65,7 @@ public class SavingsTestLifecycleExtension implements AfterAllCallback {
try {
this.savingsAccountHelper.postInterestForSavings(savingsId.intValue());
SavingsAccountData savingsAccountData = Calls
.ok(FineractClientHelper.getFineractClient().savingsAccounts.retrieveOne25(savingsId, false, null, "all"));
.ok(FineractClientHelper.getFineractClient().savingsAccounts.retrieveOne26(savingsId, false, null, "all"));
BigDecimal accountBalance = MathUtil.subtract(savingsAccountData.getSummary().getAvailableBalance(),
savingsAccountData.getMinRequiredBalance(), MathContext.DECIMAL64);
if (accountBalance.compareTo(BigDecimal.ZERO) > 0) {
@@ -128,7 +128,7 @@ public class BaseSavingsIntegrationTest extends IntegrationTest {
}
protected PostSavingsProductsResponse createProduct(PostSavingsProductsRequest productsRequest) {
return ok(fineractClient().savingsProducts.create13(productsRequest));
return ok(fineractClient().savingsProducts.create14(productsRequest));
}
protected PostSavingsAccountsRequest applySavingsRequest(Long clientId, Long productId, String submittedDate) {
@@ -162,11 +162,11 @@ public class BaseSavingsIntegrationTest extends IntegrationTest {
}
protected SavingsAccountData getSavingsAccount(Long savingsId) {
return ok(fineractClient().savingsAccounts.retrieveOne25(savingsId, false, null, "transactions"));
return ok(fineractClient().savingsAccounts.retrieveOne26(savingsId, false, null, "transactions"));
}
protected List<SavingsAccountTransactionData> getTransactions(Long savingsId) {
return ok(fineractClient().savingsAccounts.retrieveOne25(savingsId, false, null, "transactions")).getTransactions();
return ok(fineractClient().savingsAccounts.retrieveOne26(savingsId, false, null, "transactions")).getTransactions();
}
protected void verifyNoTransactions(Long savingsId) {
@@ -174,7 +174,7 @@ public class BaseSavingsIntegrationTest extends IntegrationTest {
}
protected void verifyTransactions(Long savingsId, Transaction... transactions) {
SavingsAccountData savingsDetails = ok(fineractClient().savingsAccounts.retrieveOne25(savingsId, false, null, "transactions"));
SavingsAccountData savingsDetails = ok(fineractClient().savingsAccounts.retrieveOne26(savingsId, false, null, "transactions"));
if (transactions == null || transactions.length == 0) {
Assertions.assertTrue(savingsDetails.getTransactions().isEmpty(), "No transaction is expected on savings account " + savingsId);
} else {