FINERACT-1971: Align dates and dateformat in tests

This commit is contained in:
Adam Saghy
2023-09-21 18:43:17 +02:00
parent 710e6145be
commit 0927c8e1d9
11 changed files with 407 additions and 386 deletions
@@ -402,7 +402,7 @@ final class ClientsApiResourceSwagger {
@Schema(example = "03 August 2021") @Schema(example = "03 August 2021")
public String activationDate; public String activationDate;
@Schema(example = "dd MMM yyyy") @Schema(example = "dd MMMM yyyy")
public String dateFormat; public String dateFormat;
@Schema(example = "en") @Schema(example = "en")
public String locale; public String locale;
@@ -2541,7 +2541,9 @@ public class ClientLoanIntegrationTest {
*/ */
@Test @Test
public void loanWithChargesOfTypeAmountPercentageAndPeriodicAccrualAccountingEnabled() throws InterruptedException { public void loanWithChargesOfTypeAmountPercentageAndPeriodicAccrualAccountingEnabled() throws InterruptedException {
try {
GlobalConfigurationHelper.manageConfigurations(REQUEST_SPEC, RESPONSE_SPEC,
GlobalConfigurationHelper.ENABLE_AUTOGENERATED_EXTERNAL_ID, true);
final Integer clientID = ClientHelper.createClient(REQUEST_SPEC, RESPONSE_SPEC); final Integer clientID = ClientHelper.createClient(REQUEST_SPEC, RESPONSE_SPEC);
ClientHelper.verifyClientCreatedOnServer(REQUEST_SPEC, RESPONSE_SPEC, clientID); ClientHelper.verifyClientCreatedOnServer(REQUEST_SPEC, RESPONSE_SPEC, clientID);
@@ -2605,16 +2607,16 @@ public class ClientLoanIntegrationTest {
LoanStatusChecker.verifyLoanIsWaitingForDisbursal(loanStatusHashMap); LoanStatusChecker.verifyLoanIsWaitingForDisbursal(loanStatusHashMap);
LOG.info("-------------------------------DISBURSE LOAN-------------------------------------------"); LOG.info("-------------------------------DISBURSE LOAN-------------------------------------------");
GlobalConfigurationHelper.manageConfigurations(REQUEST_SPEC, RESPONSE_SPEC,
GlobalConfigurationHelper.ENABLE_AUTOGENERATED_EXTERNAL_ID, true);
String loanDetails = LOAN_TRANSACTION_HELPER.getLoanDetails(REQUEST_SPEC, RESPONSE_SPEC, loanID); String loanDetails = LOAN_TRANSACTION_HELPER.getLoanDetails(REQUEST_SPEC, RESPONSE_SPEC, loanID);
loanStatusHashMap = LOAN_TRANSACTION_HELPER.disburseLoanWithNetDisbursalAmount("20 September 2011", loanID, loanStatusHashMap = LOAN_TRANSACTION_HELPER.disburseLoanWithNetDisbursalAmount("20 September 2011", loanID,
JsonPath.from(loanDetails).get("netDisbursalAmount").toString()); JsonPath.from(loanDetails).get("netDisbursalAmount").toString());
LoanStatusChecker.verifyLoanIsActive(loanStatusHashMap); LoanStatusChecker.verifyLoanIsActive(loanStatusHashMap);
ArrayList<HashMap> loanTransactionDetails = LOAN_TRANSACTION_HELPER.getLoanTransactionDetails(REQUEST_SPEC, RESPONSE_SPEC, loanID); ArrayList<HashMap> loanTransactionDetails = LOAN_TRANSACTION_HELPER.getLoanTransactionDetails(REQUEST_SPEC, RESPONSE_SPEC,
loanID);
validateAccrualTransactionForDisbursementCharge(loanTransactionDetails); validateAccrualTransactionForDisbursementCharge(loanTransactionDetails);
final JournalEntry[] assetAccountInitialEntry = { new JournalEntry(Float.parseFloat("120.00"), JournalEntry.TransactionType.DEBIT), final JournalEntry[] assetAccountInitialEntry = {
new JournalEntry(Float.parseFloat("120.00"), JournalEntry.TransactionType.DEBIT),
new JournalEntry(Float.parseFloat("12000.00"), JournalEntry.TransactionType.CREDIT), new JournalEntry(Float.parseFloat("12000.00"), JournalEntry.TransactionType.CREDIT),
new JournalEntry(Float.parseFloat("12000.00"), JournalEntry.TransactionType.DEBIT) }; new JournalEntry(Float.parseFloat("12000.00"), JournalEntry.TransactionType.DEBIT) };
JOURNAL_ENTRY_HELPER.checkJournalEntryForAssetAccount(assetAccount, "20 September 2011", assetAccountInitialEntry); JOURNAL_ENTRY_HELPER.checkJournalEntryForAssetAccount(assetAccount, "20 September 2011", assetAccountInitialEntry);
@@ -2739,6 +2741,10 @@ public class ClientLoanIntegrationTest {
new JournalEntry(Float.parseFloat("3120.58"), JournalEntry.TransactionType.CREDIT)); new JournalEntry(Float.parseFloat("3120.58"), JournalEntry.TransactionType.CREDIT));
loanStatusHashMap = LOAN_TRANSACTION_HELPER.getLoanDetail(REQUEST_SPEC, RESPONSE_SPEC, loanID, "status"); loanStatusHashMap = LOAN_TRANSACTION_HELPER.getLoanDetail(REQUEST_SPEC, RESPONSE_SPEC, loanID, "status");
LoanStatusChecker.verifyLoanAccountIsClosed(loanStatusHashMap); LoanStatusChecker.verifyLoanAccountIsClosed(loanStatusHashMap);
} finally {
GlobalConfigurationHelper.manageConfigurations(REQUEST_SPEC, RESPONSE_SPEC,
GlobalConfigurationHelper.ENABLE_AUTOGENERATED_EXTERNAL_ID, false);
}
} }
/*** /***
@@ -3434,7 +3440,7 @@ public class ClientLoanIntegrationTest {
@Test @Test
public void testInteroperationLoanRepaymentAPI() { public void testInteroperationLoanRepaymentAPI() {
try {
DateFormat dateFormat = new SimpleDateFormat(DATETIME_PATTERN, Locale.US); DateFormat dateFormat = new SimpleDateFormat(DATETIME_PATTERN, Locale.US);
dateFormat.setTimeZone(Utils.getTimeZoneOfTenant()); dateFormat.setTimeZone(Utils.getTimeZoneOfTenant());
GlobalConfigurationHelper.updateEnabledFlagForGlobalConfiguration(REQUEST_SPEC, RESPONSE_SPEC, "42", true); GlobalConfigurationHelper.updateEnabledFlagForGlobalConfiguration(REQUEST_SPEC, RESPONSE_SPEC, "42", true);
@@ -3443,7 +3449,8 @@ public class ClientLoanIntegrationTest {
Calendar firstRepaymentDate = (Calendar) startDate.clone(); Calendar firstRepaymentDate = (Calendar) startDate.clone();
firstRepaymentDate.add(Calendar.MONTH, 1); firstRepaymentDate.add(Calendar.MONTH, 1);
firstRepaymentDate.add(Calendar.DAY_OF_MONTH, firstRepaymentDate.getActualMaximum(Calendar.DAY_OF_MONTH) - Calendar.DAY_OF_MONTH); firstRepaymentDate.add(Calendar.DAY_OF_MONTH,
firstRepaymentDate.getActualMaximum(Calendar.DAY_OF_MONTH) - Calendar.DAY_OF_MONTH);
String firstRepayment = dateFormat.format(firstRepaymentDate.getTime()); String firstRepayment = dateFormat.format(firstRepaymentDate.getTime());
final String loanDisbursementDate = dateFormat.format(startDate.getTime()); final String loanDisbursementDate = dateFormat.format(startDate.getTime());
@@ -3484,6 +3491,9 @@ public class ClientLoanIntegrationTest {
HashMap loanRepayment = LOAN_TRANSACTION_HELPER.makeRepaymentWithAccountNo(loanFirstRepaymentDate, earlyPayment, accountNo); HashMap loanRepayment = LOAN_TRANSACTION_HELPER.makeRepaymentWithAccountNo(loanFirstRepaymentDate, earlyPayment, accountNo);
assertNotNull(loanRepayment); assertNotNull(loanRepayment);
} finally {
GlobalConfigurationHelper.updateEnabledFlagForGlobalConfiguration(REQUEST_SPEC, RESPONSE_SPEC, "42", false);
}
} }
@Test @Test
@@ -4917,7 +4927,7 @@ public class ClientLoanIntegrationTest {
@Test @Test
public void testLoanScheduleWithInterestRecalculationMakePrepaymentAfterRepayment() { public void testLoanScheduleWithInterestRecalculationMakePrepaymentAfterRepayment() {
try {
DateFormat dateFormat = new SimpleDateFormat(DATETIME_PATTERN, Locale.US); DateFormat dateFormat = new SimpleDateFormat(DATETIME_PATTERN, Locale.US);
dateFormat.setTimeZone(Utils.getTimeZoneOfTenant()); dateFormat.setTimeZone(Utils.getTimeZoneOfTenant());
GlobalConfigurationHelper.updateEnabledFlagForGlobalConfiguration(REQUEST_SPEC, RESPONSE_SPEC, "42", true); GlobalConfigurationHelper.updateEnabledFlagForGlobalConfiguration(REQUEST_SPEC, RESPONSE_SPEC, "42", true);
@@ -4927,7 +4937,8 @@ public class ClientLoanIntegrationTest {
Calendar firstRepaymentDate = (Calendar) startDate.clone(); Calendar firstRepaymentDate = (Calendar) startDate.clone();
firstRepaymentDate.add(Calendar.MONTH, 1); firstRepaymentDate.add(Calendar.MONTH, 1);
firstRepaymentDate.add(Calendar.DAY_OF_MONTH, firstRepaymentDate.getActualMaximum(Calendar.DAY_OF_MONTH) - Calendar.DAY_OF_MONTH); firstRepaymentDate.add(Calendar.DAY_OF_MONTH,
firstRepaymentDate.getActualMaximum(Calendar.DAY_OF_MONTH) - Calendar.DAY_OF_MONTH);
String firstRepayment = dateFormat.format(firstRepaymentDate.getTime()); String firstRepayment = dateFormat.format(firstRepaymentDate.getTime());
final String loanDisbursementDate = dateFormat.format(startDate.getTime()); final String loanDisbursementDate = dateFormat.format(startDate.getTime());
@@ -4972,12 +4983,14 @@ public class ClientLoanIntegrationTest {
LOAN_TRANSACTION_HELPER.makeRepayment(loanPrepaymentDate, Float.parseFloat(prepayAmount), loanID); LOAN_TRANSACTION_HELPER.makeRepayment(loanPrepaymentDate, Float.parseFloat(prepayAmount), loanID);
loanStatusHashMap = LoanStatusChecker.getStatusOfLoan(REQUEST_SPEC, RESPONSE_SPEC, loanID); loanStatusHashMap = LoanStatusChecker.getStatusOfLoan(REQUEST_SPEC, RESPONSE_SPEC, loanID);
LoanStatusChecker.verifyLoanAccountIsClosed(loanStatusHashMap); LoanStatusChecker.verifyLoanAccountIsClosed(loanStatusHashMap);
} finally {
GlobalConfigurationHelper.updateEnabledFlagForGlobalConfiguration(REQUEST_SPEC, RESPONSE_SPEC, "42", false); GlobalConfigurationHelper.updateEnabledFlagForGlobalConfiguration(REQUEST_SPEC, RESPONSE_SPEC, "42", false);
} }
}
@Test @Test
public void testLoanScheduleWithInterestRecalculationMakeAdvancePaymentTillSettlement() { public void testLoanScheduleWithInterestRecalculationMakeAdvancePaymentTillSettlement() {
try {
final ResponseSpecification errorResponse = new ResponseSpecBuilder().expectStatusCode(403).build(); final ResponseSpecification errorResponse = new ResponseSpecBuilder().expectStatusCode(403).build();
final LoanTransactionHelper validationErrorHelper = new LoanTransactionHelper(REQUEST_SPEC, errorResponse); final LoanTransactionHelper validationErrorHelper = new LoanTransactionHelper(REQUEST_SPEC, errorResponse);
DateFormat dateFormat = new SimpleDateFormat(DATETIME_PATTERN, Locale.US); DateFormat dateFormat = new SimpleDateFormat(DATETIME_PATTERN, Locale.US);
@@ -4989,7 +5002,8 @@ public class ClientLoanIntegrationTest {
Calendar firstRepaymentDate = (Calendar) startDate.clone(); Calendar firstRepaymentDate = (Calendar) startDate.clone();
firstRepaymentDate.add(Calendar.MONTH, 1); firstRepaymentDate.add(Calendar.MONTH, 1);
firstRepaymentDate.add(Calendar.DAY_OF_MONTH, firstRepaymentDate.getActualMaximum(Calendar.DAY_OF_MONTH) - Calendar.DAY_OF_MONTH); firstRepaymentDate.add(Calendar.DAY_OF_MONTH,
firstRepaymentDate.getActualMaximum(Calendar.DAY_OF_MONTH) - Calendar.DAY_OF_MONTH);
String firstRepayment = dateFormat.format(firstRepaymentDate.getTime()); String firstRepayment = dateFormat.format(firstRepaymentDate.getTime());
final String loanDisbursementDate = dateFormat.format(startDate.getTime()); final String loanDisbursementDate = dateFormat.format(startDate.getTime());
@@ -5044,8 +5058,10 @@ public class ClientLoanIntegrationTest {
HashMap savingsAccountErrorData = validationErrorHelper.makeRepayment(retrieveDueDate, amount, loanID); HashMap savingsAccountErrorData = validationErrorHelper.makeRepayment(retrieveDueDate, amount, loanID);
ArrayList<HashMap> error = (ArrayList<HashMap>) savingsAccountErrorData.get("errors"); ArrayList<HashMap> error = (ArrayList<HashMap>) savingsAccountErrorData.get("errors");
assertEquals("error.msg.loan.transaction.cannot.be.a.future.date", error.get(0).get("userMessageGlobalisationCode")); assertEquals("error.msg.loan.transaction.cannot.be.a.future.date", error.get(0).get("userMessageGlobalisationCode"));
} finally {
GlobalConfigurationHelper.updateEnabledFlagForGlobalConfiguration(REQUEST_SPEC, RESPONSE_SPEC, "42", false); GlobalConfigurationHelper.updateEnabledFlagForGlobalConfiguration(REQUEST_SPEC, RESPONSE_SPEC, "42", false);
} }
}
@Test @Test
public void testCollateralDataIsAvailableWhenRequested() { public void testCollateralDataIsAvailableWhenRequested() {
@@ -5722,6 +5738,8 @@ public class ClientLoanIntegrationTest {
assertTrue(loanDetails.getStatus().getOverpaid()); assertTrue(loanDetails.getStatus().getOverpaid());
} finally { } finally {
GlobalConfigurationHelper.updateIsBusinessDateEnabled(REQUEST_SPEC, RESPONSE_SPEC, Boolean.FALSE); GlobalConfigurationHelper.updateIsBusinessDateEnabled(REQUEST_SPEC, RESPONSE_SPEC, Boolean.FALSE);
GlobalConfigurationHelper.manageConfigurations(REQUEST_SPEC, RESPONSE_SPEC,
GlobalConfigurationHelper.ENABLE_AUTOGENERATED_EXTERNAL_ID, false);
} }
} }
@@ -6256,19 +6274,21 @@ public class ClientLoanIntegrationTest {
.dateFormat(DATETIME_PATTERN).transactionDate("08 September 2022").locale("en").transactionAmount(3007.0)); .dateFormat(DATETIME_PATTERN).transactionDate("08 September 2022").locale("en").transactionAmount(3007.0));
} finally { } finally {
GlobalConfigurationHelper.updateIsBusinessDateEnabled(REQUEST_SPEC, RESPONSE_SPEC, Boolean.FALSE); GlobalConfigurationHelper.updateIsBusinessDateEnabled(REQUEST_SPEC, RESPONSE_SPEC, Boolean.FALSE);
GlobalConfigurationHelper.updateIsAutomaticExternalIdGenerationEnabled(REQUEST_SPEC, RESPONSE_SPEC, false);
} }
} }
@Test @Test
public void testCloseOpenMaturityDate() { public void testCloseOpenMaturityDate() {
try {
GlobalConfigurationHelper.updateIsAutomaticExternalIdGenerationEnabled(REQUEST_SPEC, RESPONSE_SPEC, true); GlobalConfigurationHelper.updateIsAutomaticExternalIdGenerationEnabled(REQUEST_SPEC, RESPONSE_SPEC, true);
final Account assetAccount = ACCOUNT_HELPER.createAssetAccount(); final Account assetAccount = ACCOUNT_HELPER.createAssetAccount();
final Account incomeAccount = ACCOUNT_HELPER.createIncomeAccount(); final Account incomeAccount = ACCOUNT_HELPER.createIncomeAccount();
final Account expenseAccount = ACCOUNT_HELPER.createExpenseAccount(); final Account expenseAccount = ACCOUNT_HELPER.createExpenseAccount();
final Account overpaymentAccount = ACCOUNT_HELPER.createLiabilityAccount(); final Account overpaymentAccount = ACCOUNT_HELPER.createLiabilityAccount();
final Integer loanProductID = createLoanProductWithPeriodicAccrualAccountingNoInterest(assetAccount, incomeAccount, expenseAccount, final Integer loanProductID = createLoanProductWithPeriodicAccrualAccountingNoInterest(assetAccount, incomeAccount,
overpaymentAccount); expenseAccount, overpaymentAccount);
final Integer clientID = ClientHelper.createClient(REQUEST_SPEC, RESPONSE_SPEC, "01 January 2011"); final Integer clientID = ClientHelper.createClient(REQUEST_SPEC, RESPONSE_SPEC, "01 January 2011");
@@ -6314,7 +6334,9 @@ public class ClientLoanIntegrationTest {
assertNotNull(actualMaturityDate); assertNotNull(actualMaturityDate);
assertTrue(expectedMaturityDate.isEqual(actualMaturityDate)); assertTrue(expectedMaturityDate.isEqual(actualMaturityDate));
} finally {
GlobalConfigurationHelper.updateIsAutomaticExternalIdGenerationEnabled(REQUEST_SPEC, RESPONSE_SPEC, false);
}
} }
@Test @Test
@@ -2235,7 +2235,7 @@ public class ClientSavingsIntegrationTest {
Integer releaseTransactionId = this.savingsAccountHelper.releaseAmount(savingsId, holdTransactionId); Integer releaseTransactionId = this.savingsAccountHelper.releaseAmount(savingsId, holdTransactionId);
Date today = Date.from(Utils.getLocalDateOfTenant().atStartOfDay(Utils.getZoneIdOfTenant()).toInstant()); Date today = Date.from(Utils.getLocalDateOfTenant().atStartOfDay(Utils.getZoneIdOfTenant()).toInstant());
String todayDate = today.toString(); String todayDate = today.toString();
SimpleDateFormat dt1 = new SimpleDateFormat("dd MMM yyyy"); SimpleDateFormat dt1 = new SimpleDateFormat("dd MMMM yyyy");
todayDate = dt1.format(today).toString(); todayDate = dt1.format(today).toString();
withdrawTransactionId = (Integer) this.savingsAccountHelper.withdrawalFromSavingsAccount(savingsId, "300", todayDate, withdrawTransactionId = (Integer) this.savingsAccountHelper.withdrawalFromSavingsAccount(savingsId, "300", todayDate,
CommonConstants.RESPONSE_RESOURCE_ID); CommonConstants.RESPONSE_RESOURCE_ID);
@@ -50,7 +50,7 @@ import org.junit.jupiter.api.Test;
public class SavingsAccountTransactionTest { public class SavingsAccountTransactionTest {
public static final String ACCOUNT_TYPE_INDIVIDUAL = "INDIVIDUAL"; public static final String ACCOUNT_TYPE_INDIVIDUAL = "INDIVIDUAL";
public static final String DEFAULT_DATE_FORMAT = "dd MMM yyyy"; public static final String DEFAULT_DATE_FORMAT = "dd MMMM yyyy";
final String startDateString = "03 June 2023"; final String startDateString = "03 June 2023";
final String depositDateString = "05 June 2023"; final String depositDateString = "05 June 2023";
final String withdrawDateString = "10 June 2023"; final String withdrawDateString = "10 June 2023";
@@ -62,7 +62,7 @@ import org.springframework.data.domain.Sort;
public class SavingsAccountTransactionsSearchIntegrationTest { public class SavingsAccountTransactionsSearchIntegrationTest {
public static final String ACCOUNT_TYPE_INDIVIDUAL = "INDIVIDUAL"; public static final String ACCOUNT_TYPE_INDIVIDUAL = "INDIVIDUAL";
public static final String DEFAULT_DATE_FORMAT = "dd MMM yyyy"; public static final String DEFAULT_DATE_FORMAT = "dd MMMM yyyy";
public static final Locale DEFAULT_LOCALE = Locale.ENGLISH; public static final Locale DEFAULT_LOCALE = Locale.ENGLISH;
final String startDate = "01 May 2023"; final String startDate = "01 May 2023";
final String firstDepositDate = "05 May 2023"; final String firstDepositDate = "05 May 2023";
@@ -44,8 +44,7 @@ public class SavingsAccountsExternalIdTest extends IntegrationTest {
public static final String EXTERNAL_ID = UUID.randomUUID().toString(); public static final String EXTERNAL_ID = UUID.randomUUID().toString();
private final String dateFormat = "dd MMMM yyyy"; private final String dateFormat = "dd MMMM yyyy";
private final String locale = "en"; private final String locale = "en";
private final String formattedDate = LocalDate.now(ZoneId.systemDefault()).minusDays(5) private final String formattedDate = LocalDate.now(ZoneId.systemDefault()).minusDays(5).format(DateTimeFormatter.ofPattern(dateFormat));
.format(DateTimeFormatter.ofPattern("dd MMM yyyy"));
@Test @Test
@Order(1) @Order(1)
@@ -42,7 +42,7 @@ public class SavingsAccountsTest extends IntegrationTest {
private static final Logger LOG = LoggerFactory.getLogger(SavingsAccountsTest.class); private static final Logger LOG = LoggerFactory.getLogger(SavingsAccountsTest.class);
private final String dateFormat = "dd MMMM yyyy"; private final String dateFormat = "dd MMMM yyyy";
private final String locale = "en"; private final String locale = "en";
private final SimpleDateFormat simpleDateFormat = new SimpleDateFormat("dd MMM yyyy"); private final SimpleDateFormat simpleDateFormat = new SimpleDateFormat(dateFormat);
private final String formattedDate = simpleDateFormat.format(new Date()); private final String formattedDate = simpleDateFormat.format(new Date());
private int savingId = 1; private int savingId = 1;
@@ -150,7 +150,7 @@ public class CenterDomain implements Comparable<CenterDomain> {
if (active) { if (active) {
map.put("active", "true"); map.put("active", "true");
map.put("locale", "en"); map.put("locale", "en");
map.put("dateFormat", "dd MMM yyyy"); map.put("dateFormat", "dd MMMM yyyy");
map.put("activationDate", activationDate); map.put("activationDate", activationDate);
} else { } else {
map.put("active", "false"); map.put("active", "false");
@@ -113,7 +113,7 @@ public final class CenterHelper {
if (activationDate != null) { if (activationDate != null) {
hm.put("active", true); hm.put("active", true);
hm.put("locale", "en"); hm.put("locale", "en");
hm.put("dateFormat", "dd MMM yyyy"); hm.put("dateFormat", "dd MMMM yyyy");
hm.put("activationDate", activationDate); hm.put("activationDate", activationDate);
} }
@@ -58,7 +58,7 @@ public class DividendsIntegrationTests {
@SuppressWarnings("unchecked") @SuppressWarnings("unchecked")
@Test @Test
public void testCreateDividends() { public void testCreateDividends() {
DateFormat simple = new SimpleDateFormat("dd MMM yyyy"); DateFormat simple = new SimpleDateFormat("dd MMMM yyyy");
final Integer productId = createShareProduct(); final Integer productId = createShareProduct();
ArrayList<Integer> shareAccounts = new ArrayList<>(); ArrayList<Integer> shareAccounts = new ArrayList<>();
for (int i = 0; i < 5; i++) { for (int i = 0; i < 5; i++) {
@@ -109,12 +109,12 @@ public class DividendsIntegrationTests {
Calendar cal = Calendar.getInstance(); Calendar cal = Calendar.getInstance();
cal.set(startdateList.get(0), startdateList.get(1) - 1, startdateList.get(2)); cal.set(startdateList.get(0), startdateList.get(1) - 1, startdateList.get(2));
Date startDate = cal.getTime(); Date startDate = cal.getTime();
Assertions.assertEquals("01 Jan 2015", simple.format(startDate)); Assertions.assertEquals("01 January 2015", simple.format(startDate));
List<Integer> enddateList = (List<Integer>) dividend.get("dividendPeriodEndDate"); List<Integer> enddateList = (List<Integer>) dividend.get("dividendPeriodEndDate");
cal = Calendar.getInstance(); cal = Calendar.getInstance();
cal.set(enddateList.get(0), enddateList.get(1) - 1, enddateList.get(2)); cal.set(enddateList.get(0), enddateList.get(1) - 1, enddateList.get(2));
Date endDate = cal.getTime(); Date endDate = cal.getTime();
Assertions.assertEquals("01 Apr 2016", simple.format(endDate)); Assertions.assertEquals("01 April 2016", simple.format(endDate));
Map<String, Object> dividenddetails = ShareDividendsTransactionHelper.retrieveDividendDetails(productId, dividendId, requestSpec, Map<String, Object> dividenddetails = ShareDividendsTransactionHelper.retrieveDividendDetails(productId, dividendId, requestSpec,
responseSpec); responseSpec);
@@ -151,12 +151,12 @@ public class DividendsIntegrationTests {
cal = Calendar.getInstance(); cal = Calendar.getInstance();
cal.set(startdateList.get(0), startdateList.get(1) - 1, startdateList.get(2)); cal.set(startdateList.get(0), startdateList.get(1) - 1, startdateList.get(2));
startDate = cal.getTime(); startDate = cal.getTime();
Assertions.assertEquals("01 Jan 2015", simple.format(startDate)); Assertions.assertEquals("01 January 2015", simple.format(startDate));
enddateList = (List<Integer>) dividend.get("dividendPeriodEndDate"); enddateList = (List<Integer>) dividend.get("dividendPeriodEndDate");
cal = Calendar.getInstance(); cal = Calendar.getInstance();
cal.set(enddateList.get(0), enddateList.get(1) - 1, enddateList.get(2)); cal.set(enddateList.get(0), enddateList.get(1) - 1, enddateList.get(2));
endDate = cal.getTime(); endDate = cal.getTime();
Assertions.assertEquals("01 Apr 2016", simple.format(endDate)); Assertions.assertEquals("01 April 2016", simple.format(endDate));
dividenddetails = ShareDividendsTransactionHelper.retrieveDividendDetails(productId, dividendId, requestSpec, responseSpec); dividenddetails = ShareDividendsTransactionHelper.retrieveDividendDetails(productId, dividendId, requestSpec, responseSpec);
Assertions.assertEquals("5", String.valueOf(dividenddetails.get("totalFilteredRecords"))); Assertions.assertEquals("5", String.valueOf(dividenddetails.get("totalFilteredRecords")));
@@ -383,7 +383,7 @@ public class ShareAccountIntegrationTests {
Map<String, Object> shareAccountDataForUpdate = new HashMap<>(); Map<String, Object> shareAccountDataForUpdate = new HashMap<>();
shareAccountDataForUpdate.put("requestedShares", 30); shareAccountDataForUpdate.put("requestedShares", 30);
shareAccountDataForUpdate.put("applicationDate", "02 Mar 2016"); shareAccountDataForUpdate.put("applicationDate", "02 March 2016");
shareAccountDataForUpdate.put("dateFormat", "dd MMMM yyyy"); shareAccountDataForUpdate.put("dateFormat", "dd MMMM yyyy");
shareAccountDataForUpdate.put("locale", "en_GB"); shareAccountDataForUpdate.put("locale", "en_GB");
shareAccountDataForUpdate.put("charges", charges); shareAccountDataForUpdate.put("charges", charges);
@@ -394,7 +394,7 @@ public class ShareAccountIntegrationTests {
List<Map<String, Object>> transactions = (List<Map<String, Object>>) shareAccountData.get("purchasedShares"); List<Map<String, Object>> transactions = (List<Map<String, Object>>) shareAccountData.get("purchasedShares");
Assertions.assertNotNull(transactions); Assertions.assertNotNull(transactions);
Assertions.assertEquals(2, transactions.size()); Assertions.assertEquals(2, transactions.size());
DateFormat simple = new SimpleDateFormat("dd MMM yyyy"); DateFormat simple = new SimpleDateFormat("dd MMMM yyyy");
for (int i = 0; i < transactions.size(); i++) { for (int i = 0; i < transactions.size(); i++) {
Map<String, Object> transaction = transactions.get(i); Map<String, Object> transaction = transactions.get(i);
Map<String, Object> transactionTypeMap = (Map<String, Object>) transaction.get("type"); Map<String, Object> transactionTypeMap = (Map<String, Object>) transaction.get("type");
@@ -409,7 +409,7 @@ public class ShareAccountIntegrationTests {
Assertions.assertEquals("60.0", String.valueOf(transaction.get("amountPaid"))); Assertions.assertEquals("60.0", String.valueOf(transaction.get("amountPaid")));
Assertions.assertEquals("2.0", String.valueOf(transaction.get("chargeAmount"))); Assertions.assertEquals("2.0", String.valueOf(transaction.get("chargeAmount")));
Assertions.assertEquals("2.0", String.valueOf(transaction.get("purchasedPrice"))); Assertions.assertEquals("2.0", String.valueOf(transaction.get("purchasedPrice")));
Assertions.assertEquals("02 Mar 2016", simple.format(date)); Assertions.assertEquals("02 March 2016", simple.format(date));
} else if (transactionType.equals("charge.payment")) { } else if (transactionType.equals("charge.payment")) {
Assertions.assertEquals("2.0", String.valueOf(transaction.get("amount"))); Assertions.assertEquals("2.0", String.valueOf(transaction.get("amount")));
Assertions.assertEquals("0", String.valueOf(transaction.get("amountPaid"))); Assertions.assertEquals("0", String.valueOf(transaction.get("amountPaid")));
@@ -444,7 +444,7 @@ public class ShareAccountIntegrationTests {
Map<String, Object> approveMap = new HashMap<>(); Map<String, Object> approveMap = new HashMap<>();
approveMap.put("note", "Share Account Approval Note"); approveMap.put("note", "Share Account Approval Note");
approveMap.put("dateFormat", "dd MMMM yyyy"); approveMap.put("dateFormat", "dd MMMM yyyy");
approveMap.put("approvedDate", "01 Jan 2016"); approveMap.put("approvedDate", "01 January 2016");
approveMap.put("locale", "en"); approveMap.put("locale", "en");
String approve = new Gson().toJson(approveMap); String approve = new Gson().toJson(approveMap);
ShareAccountTransactionHelper.postCommand("approve", shareAccountId, approve, requestSpec, responseSpec); ShareAccountTransactionHelper.postCommand("approve", shareAccountId, approve, requestSpec, responseSpec);
@@ -456,7 +456,7 @@ public class ShareAccountIntegrationTests {
Calendar cal = Calendar.getInstance(); Calendar cal = Calendar.getInstance();
cal.set(dateList.get(0), dateList.get(1) - 1, dateList.get(2)); cal.set(dateList.get(0), dateList.get(1) - 1, dateList.get(2));
Date approvedDate = cal.getTime(); Date approvedDate = cal.getTime();
Assertions.assertEquals("01 Jan 2016", simple.format(approvedDate)); Assertions.assertEquals("01 January 2016", simple.format(approvedDate));
// charges verification // charges verification
chargesList = (List<Map<String, Object>>) shareAccountData.get("charges"); chargesList = (List<Map<String, Object>>) shareAccountData.get("charges");
@@ -483,7 +483,7 @@ public class ShareAccountIntegrationTests {
Map<String, Object> activateMap = new HashMap<>(); Map<String, Object> activateMap = new HashMap<>();
activateMap.put("dateFormat", "dd MMMM yyyy"); activateMap.put("dateFormat", "dd MMMM yyyy");
activateMap.put("activatedDate", "01 Jan 2016"); activateMap.put("activatedDate", "01 January 2016");
activateMap.put("locale", "en"); activateMap.put("locale", "en");
String activateJson = new Gson().toJson(activateMap); String activateJson = new Gson().toJson(activateMap);
ShareAccountTransactionHelper.postCommand("activate", shareAccountId, activateJson, requestSpec, responseSpec); ShareAccountTransactionHelper.postCommand("activate", shareAccountId, activateJson, requestSpec, responseSpec);
@@ -495,7 +495,7 @@ public class ShareAccountIntegrationTests {
cal = Calendar.getInstance(); cal = Calendar.getInstance();
cal.set(dateList.get(0), dateList.get(1) - 1, dateList.get(2)); cal.set(dateList.get(0), dateList.get(1) - 1, dateList.get(2));
Date activatedDate = cal.getTime(); Date activatedDate = cal.getTime();
Assertions.assertEquals("01 Jan 2016", simple.format(activatedDate)); Assertions.assertEquals("01 January 2016", simple.format(activatedDate));
transactions = (List<Map<String, Object>>) shareAccountData.get("purchasedShares"); transactions = (List<Map<String, Object>>) shareAccountData.get("purchasedShares");
Assertions.assertNotNull(transactions); Assertions.assertNotNull(transactions);
@@ -514,12 +514,12 @@ public class ShareAccountIntegrationTests {
Assertions.assertEquals("62.0", String.valueOf(transaction.get("amountPaid"))); Assertions.assertEquals("62.0", String.valueOf(transaction.get("amountPaid")));
Assertions.assertEquals("2.0", String.valueOf(transaction.get("chargeAmount"))); Assertions.assertEquals("2.0", String.valueOf(transaction.get("chargeAmount")));
Assertions.assertEquals("2.0", String.valueOf(transaction.get("purchasedPrice"))); Assertions.assertEquals("2.0", String.valueOf(transaction.get("purchasedPrice")));
Assertions.assertEquals("02 Mar 2016", simple.format(date)); Assertions.assertEquals("02 March 2016", simple.format(date));
} else if (transactionType.equals("charge.payment")) { } else if (transactionType.equals("charge.payment")) {
Assertions.assertEquals("2.0", String.valueOf(transaction.get("amount"))); Assertions.assertEquals("2.0", String.valueOf(transaction.get("amount")));
Assertions.assertEquals("2.0", String.valueOf(transaction.get("amountPaid"))); Assertions.assertEquals("2.0", String.valueOf(transaction.get("amountPaid")));
Assertions.assertEquals("0", String.valueOf(transaction.get("chargeAmount"))); Assertions.assertEquals("0", String.valueOf(transaction.get("chargeAmount")));
Assertions.assertEquals("01 Jan 2016", simple.format(date)); Assertions.assertEquals("01 January 2016", simple.format(date));
} }
} }
@@ -552,7 +552,7 @@ public class ShareAccountIntegrationTests {
// apply additional shares // apply additional shares
Map<String, Object> additionalSharesRequestMap = new HashMap<>(); Map<String, Object> additionalSharesRequestMap = new HashMap<>();
additionalSharesRequestMap.put("requestedDate", "01 Apr 2016"); additionalSharesRequestMap.put("requestedDate", "01 April 2016");
additionalSharesRequestMap.put("dateFormat", "dd MMMM yyyy"); additionalSharesRequestMap.put("dateFormat", "dd MMMM yyyy");
additionalSharesRequestMap.put("locale", "en"); additionalSharesRequestMap.put("locale", "en");
additionalSharesRequestMap.put("requestedShares", "15"); additionalSharesRequestMap.put("requestedShares", "15");
@@ -573,13 +573,13 @@ public class ShareAccountIntegrationTests {
Date date = cal.getTime(); Date date = cal.getTime();
String transactionType = (String) transactionTypeMap.get("code"); String transactionType = (String) transactionTypeMap.get("code");
String transactionDate = simple.format(date); String transactionDate = simple.format(date);
if (transactionType.equals("purchasedSharesType.purchased") && transactionDate.equals("02 Mar 2016")) { if (transactionType.equals("purchasedSharesType.purchased") && transactionDate.equals("02 March 2016")) {
Assertions.assertEquals("30", String.valueOf(transaction.get("numberOfShares"))); Assertions.assertEquals("30", String.valueOf(transaction.get("numberOfShares")));
Assertions.assertEquals("62.0", String.valueOf(transaction.get("amount"))); Assertions.assertEquals("62.0", String.valueOf(transaction.get("amount")));
Assertions.assertEquals("62.0", String.valueOf(transaction.get("amountPaid"))); Assertions.assertEquals("62.0", String.valueOf(transaction.get("amountPaid")));
Assertions.assertEquals("2.0", String.valueOf(transaction.get("chargeAmount"))); Assertions.assertEquals("2.0", String.valueOf(transaction.get("chargeAmount")));
Assertions.assertEquals("2.0", String.valueOf(transaction.get("purchasedPrice"))); Assertions.assertEquals("2.0", String.valueOf(transaction.get("purchasedPrice")));
} else if (transactionType.equals("purchasedSharesType.purchased") && transactionDate.equals("01 Apr 2016")) { } else if (transactionType.equals("purchasedSharesType.purchased") && transactionDate.equals("01 April 2016")) {
addtionalSharesRequestId = String.valueOf(transaction.get("id")); addtionalSharesRequestId = String.valueOf(transaction.get("id"));
Assertions.assertEquals("15", String.valueOf(transaction.get("numberOfShares"))); Assertions.assertEquals("15", String.valueOf(transaction.get("numberOfShares")));
Assertions.assertEquals("32.0", String.valueOf(transaction.get("amount"))); Assertions.assertEquals("32.0", String.valueOf(transaction.get("amount")));
@@ -593,7 +593,7 @@ public class ShareAccountIntegrationTests {
Assertions.assertEquals("2.0", String.valueOf(transaction.get("amount"))); Assertions.assertEquals("2.0", String.valueOf(transaction.get("amount")));
Assertions.assertEquals("2.0", String.valueOf(transaction.get("amountPaid"))); Assertions.assertEquals("2.0", String.valueOf(transaction.get("amountPaid")));
Assertions.assertEquals("0", String.valueOf(transaction.get("chargeAmount"))); Assertions.assertEquals("0", String.valueOf(transaction.get("chargeAmount")));
Assertions.assertEquals("01 Jan 2016", transactionDate); Assertions.assertEquals("01 January 2016", transactionDate);
} }
} }
@@ -648,13 +648,13 @@ public class ShareAccountIntegrationTests {
Date date = cal.getTime(); Date date = cal.getTime();
String transactionType = (String) transactionTypeMap.get("code"); String transactionType = (String) transactionTypeMap.get("code");
String transactionDate = simple.format(date); String transactionDate = simple.format(date);
if (transactionType.equals("purchasedSharesType.purchased") && transactionDate.equals("02 Mar 2016")) { if (transactionType.equals("purchasedSharesType.purchased") && transactionDate.equals("02 March 2016")) {
Assertions.assertEquals("30", String.valueOf(transaction.get("numberOfShares"))); Assertions.assertEquals("30", String.valueOf(transaction.get("numberOfShares")));
Assertions.assertEquals("62.0", String.valueOf(transaction.get("amount"))); Assertions.assertEquals("62.0", String.valueOf(transaction.get("amount")));
Assertions.assertEquals("62.0", String.valueOf(transaction.get("amountPaid"))); Assertions.assertEquals("62.0", String.valueOf(transaction.get("amountPaid")));
Assertions.assertEquals("2.0", String.valueOf(transaction.get("chargeAmount"))); Assertions.assertEquals("2.0", String.valueOf(transaction.get("chargeAmount")));
Assertions.assertEquals("2.0", String.valueOf(transaction.get("purchasedPrice"))); Assertions.assertEquals("2.0", String.valueOf(transaction.get("purchasedPrice")));
} else if (transactionType.equals("purchasedSharesType.purchased") && transactionDate.equals("01 Apr 2016")) { } else if (transactionType.equals("purchasedSharesType.purchased") && transactionDate.equals("01 April 2016")) {
Assertions.assertEquals("15", String.valueOf(transaction.get("numberOfShares"))); Assertions.assertEquals("15", String.valueOf(transaction.get("numberOfShares")));
Assertions.assertEquals("32.0", String.valueOf(transaction.get("amount"))); Assertions.assertEquals("32.0", String.valueOf(transaction.get("amount")));
Assertions.assertEquals("32.0", String.valueOf(transaction.get("amountPaid"))); Assertions.assertEquals("32.0", String.valueOf(transaction.get("amountPaid")));
@@ -667,7 +667,7 @@ public class ShareAccountIntegrationTests {
Assertions.assertEquals("2.0", String.valueOf(transaction.get("amount"))); Assertions.assertEquals("2.0", String.valueOf(transaction.get("amount")));
Assertions.assertEquals("2.0", String.valueOf(transaction.get("amountPaid"))); Assertions.assertEquals("2.0", String.valueOf(transaction.get("amountPaid")));
Assertions.assertEquals("0", String.valueOf(transaction.get("chargeAmount"))); Assertions.assertEquals("0", String.valueOf(transaction.get("chargeAmount")));
Assertions.assertEquals("01 Jan 2016", transactionDate); Assertions.assertEquals("01 January 2016", transactionDate);
} }
} }
@@ -843,13 +843,13 @@ public class ShareAccountIntegrationTests {
Date date = cal.getTime(); Date date = cal.getTime();
String transactionType = (String) transactionTypeMap.get("code"); String transactionType = (String) transactionTypeMap.get("code");
String transactionDate = simple.format(date); String transactionDate = simple.format(date);
if (transactionType.equals("purchasedSharesType.purchased") && transactionDate.equals("02 Mar 2016")) { if (transactionType.equals("purchasedSharesType.purchased") && transactionDate.equals("02 March 2016")) {
Assertions.assertEquals("30", String.valueOf(transaction.get("numberOfShares"))); Assertions.assertEquals("30", String.valueOf(transaction.get("numberOfShares")));
Assertions.assertEquals("62.0", String.valueOf(transaction.get("amount"))); Assertions.assertEquals("62.0", String.valueOf(transaction.get("amount")));
Assertions.assertEquals("62.0", String.valueOf(transaction.get("amountPaid"))); Assertions.assertEquals("62.0", String.valueOf(transaction.get("amountPaid")));
Assertions.assertEquals("2.0", String.valueOf(transaction.get("chargeAmount"))); Assertions.assertEquals("2.0", String.valueOf(transaction.get("chargeAmount")));
Assertions.assertEquals("2.0", String.valueOf(transaction.get("purchasedPrice"))); Assertions.assertEquals("2.0", String.valueOf(transaction.get("purchasedPrice")));
} else if (transactionType.equals("purchasedSharesType.purchased") && transactionDate.equals("01 Apr 2016")) { } else if (transactionType.equals("purchasedSharesType.purchased") && transactionDate.equals("01 April 2016")) {
Assertions.assertEquals("15", String.valueOf(transaction.get("numberOfShares"))); Assertions.assertEquals("15", String.valueOf(transaction.get("numberOfShares")));
Assertions.assertEquals("32.0", String.valueOf(transaction.get("amount"))); Assertions.assertEquals("32.0", String.valueOf(transaction.get("amount")));
Assertions.assertEquals("32.0", String.valueOf(transaction.get("amountPaid"))); Assertions.assertEquals("32.0", String.valueOf(transaction.get("amountPaid")));
@@ -868,7 +868,7 @@ public class ShareAccountIntegrationTests {
Assertions.assertEquals("2.0", String.valueOf(transaction.get("amount"))); Assertions.assertEquals("2.0", String.valueOf(transaction.get("amount")));
Assertions.assertEquals("2.0", String.valueOf(transaction.get("amountPaid"))); Assertions.assertEquals("2.0", String.valueOf(transaction.get("amountPaid")));
Assertions.assertEquals("0", String.valueOf(transaction.get("chargeAmount"))); Assertions.assertEquals("0", String.valueOf(transaction.get("chargeAmount")));
Assertions.assertEquals("01 Jan 2016", transactionDate); Assertions.assertEquals("01 January 2016", transactionDate);
} }
} }
@@ -921,13 +921,13 @@ public class ShareAccountIntegrationTests {
Date date = cal.getTime(); Date date = cal.getTime();
String transactionType = (String) transactionTypeMap.get("code"); String transactionType = (String) transactionTypeMap.get("code");
String transactionDate = simple.format(date); String transactionDate = simple.format(date);
if (transactionType.equals("purchasedSharesType.purchased") && transactionDate.equals("02 Mar 2016")) { if (transactionType.equals("purchasedSharesType.purchased") && transactionDate.equals("02 March 2016")) {
Assertions.assertEquals("30", String.valueOf(transaction.get("numberOfShares"))); Assertions.assertEquals("30", String.valueOf(transaction.get("numberOfShares")));
Assertions.assertEquals("62.0", String.valueOf(transaction.get("amount"))); Assertions.assertEquals("62.0", String.valueOf(transaction.get("amount")));
Assertions.assertEquals("62.0", String.valueOf(transaction.get("amountPaid"))); Assertions.assertEquals("62.0", String.valueOf(transaction.get("amountPaid")));
Assertions.assertEquals("2.0", String.valueOf(transaction.get("chargeAmount"))); Assertions.assertEquals("2.0", String.valueOf(transaction.get("chargeAmount")));
Assertions.assertEquals("2.0", String.valueOf(transaction.get("purchasedPrice"))); Assertions.assertEquals("2.0", String.valueOf(transaction.get("purchasedPrice")));
} else if (transactionType.equals("purchasedSharesType.purchased") && transactionDate.equals("01 Apr 2016")) { } else if (transactionType.equals("purchasedSharesType.purchased") && transactionDate.equals("01 April 2016")) {
Assertions.assertEquals("15", String.valueOf(transaction.get("numberOfShares"))); Assertions.assertEquals("15", String.valueOf(transaction.get("numberOfShares")));
Assertions.assertEquals("32.0", String.valueOf(transaction.get("amount"))); Assertions.assertEquals("32.0", String.valueOf(transaction.get("amount")));
Assertions.assertEquals("32.0", String.valueOf(transaction.get("amountPaid"))); Assertions.assertEquals("32.0", String.valueOf(transaction.get("amountPaid")));
@@ -953,7 +953,7 @@ public class ShareAccountIntegrationTests {
Assertions.assertEquals("2.0", String.valueOf(transaction.get("amount"))); Assertions.assertEquals("2.0", String.valueOf(transaction.get("amount")));
Assertions.assertEquals("2.0", String.valueOf(transaction.get("amountPaid"))); Assertions.assertEquals("2.0", String.valueOf(transaction.get("amountPaid")));
Assertions.assertEquals("0", String.valueOf(transaction.get("chargeAmount"))); Assertions.assertEquals("0", String.valueOf(transaction.get("chargeAmount")));
Assertions.assertEquals("01 Jan 2016", transactionDate); Assertions.assertEquals("01 January 2016", transactionDate);
} }
} }
// charges verification // charges verification
@@ -990,16 +990,16 @@ public class ShareAccountIntegrationTests {
private Integer createShareAccount(final Integer clientId, final Integer productId, final Integer savingsAccountId) { private Integer createShareAccount(final Integer clientId, final Integer productId, final Integer savingsAccountId) {
String josn = new ShareAccountHelper().withClientId(String.valueOf(clientId)).withProductId(String.valueOf(productId)) String josn = new ShareAccountHelper().withClientId(String.valueOf(clientId)).withProductId(String.valueOf(productId))
.withExternalId("External1").withSavingsAccountId(String.valueOf(savingsAccountId)).withSubmittedDate("01 Jan 2016") .withExternalId("External1").withSavingsAccountId(String.valueOf(savingsAccountId)).withSubmittedDate("01 January 2016")
.withApplicationDate("01 Jan 2016").withRequestedShares("25").build(); .withApplicationDate("01 January 2016").withRequestedShares("25").build();
return ShareAccountTransactionHelper.createShareAccount(josn, requestSpec, responseSpec); return ShareAccountTransactionHelper.createShareAccount(josn, requestSpec, responseSpec);
} }
private Integer createShareAccount(final Integer clientId, final Integer productId, final Integer savingsAccountId, private Integer createShareAccount(final Integer clientId, final Integer productId, final Integer savingsAccountId,
List<Map<String, Object>> charges) { List<Map<String, Object>> charges) {
String josn = new ShareAccountHelper().withClientId(String.valueOf(clientId)).withProductId(String.valueOf(productId)) String josn = new ShareAccountHelper().withClientId(String.valueOf(clientId)).withProductId(String.valueOf(productId))
.withExternalId("External1").withSavingsAccountId(String.valueOf(savingsAccountId)).withSubmittedDate("01 Jan 2016") .withExternalId("External1").withSavingsAccountId(String.valueOf(savingsAccountId)).withSubmittedDate("01 January 2016")
.withApplicationDate("01 Jan 2016").withRequestedShares("25").withCharges(charges).build(); .withApplicationDate("01 January 2016").withRequestedShares("25").withCharges(charges).build();
return ShareAccountTransactionHelper.createShareAccount(josn, requestSpec, responseSpec); return ShareAccountTransactionHelper.createShareAccount(josn, requestSpec, responseSpec);
} }