http://git-wip-us.apache.org/repos/asf/incubator-fineract/blob/66cee785/fineract-provider/src/integrationTest/java/org/apache/fineract/integrationtests/common/accounting/JournalEntryHelper.java ---------------------------------------------------------------------- diff --git a/fineract-provider/src/integrationTest/java/org/apache/fineract/integrationtests/common/accounting/JournalEntryHelper.java b/fineract-provider/src/integrationTest/java/org/apache/fineract/integrationtests/common/accounting/JournalEntryHelper.java deleted file mode 100644 index b549763..0000000 --- a/fineract-provider/src/integrationTest/java/org/apache/fineract/integrationtests/common/accounting/JournalEntryHelper.java +++ /dev/null @@ -1,111 +0,0 @@ -/** - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.fineract.integrationtests.common.accounting; - -import static org.hamcrest.Matchers.equalTo; -import static org.junit.Assert.assertThat; -import static org.junit.Assert.assertTrue; - -import java.util.ArrayList; -import java.util.HashMap; - -import org.apache.fineract.integrationtests.common.Utils; - -import com.jayway.restassured.specification.RequestSpecification; -import com.jayway.restassured.specification.ResponseSpecification; - -@SuppressWarnings("rawtypes") -public class JournalEntryHelper { - - private final RequestSpecification requestSpec; - private final ResponseSpecification responseSpec; - - public JournalEntryHelper(final RequestSpecification requestSpec, final ResponseSpecification responseSpec) { - this.requestSpec = requestSpec; - this.responseSpec = responseSpec; - } - - public void checkJournalEntryForExpenseAccount(final Account expenseAccount, final String date, final JournalEntry... accountEntries) { - checkJournalEntry(null, expenseAccount, date, accountEntries); - } - - public void checkJournalEntryForAssetAccount(final Account assetAccount, final String date, final JournalEntry... accountEntries) { - checkJournalEntry(null, assetAccount, date, accountEntries); - } - - public void checkJournalEntryForIncomeAccount(final Account incomeAccount, final String date, final JournalEntry... accountEntries) { - checkJournalEntry(null, incomeAccount, date, accountEntries); - } - - public void checkJournalEntryForLiabilityAccount(final Account liabilityAccount, final String date, - final JournalEntry... accountEntries) { - checkJournalEntry(null, liabilityAccount, date, accountEntries); - } - - public void checkJournalEntryForLiabilityAccount(final Integer officeId, final Account liabilityAccount, final String date, - final JournalEntry... accountEntries) { - checkJournalEntry(officeId, liabilityAccount, date, accountEntries); - } - - public void ensureNoAccountingTransactionsWithTransactionId(final String transactionId) { - ArrayList<HashMap> transactions = getJournalEntriesByTransactionId(transactionId); - assertTrue("Tranasactions are is not empty", transactions.isEmpty()); - - } - - private String getEntryValueFromJournalEntry(final ArrayList<HashMap> entryResponse, final int entryNumber) { - final HashMap map = (HashMap) entryResponse.get(entryNumber).get("entryType"); - return (String) map.get("value"); - } - - private Float getTransactionAmountFromJournalEntry(final ArrayList<HashMap> entryResponse, final int entryNumber) { - return (Float) entryResponse.get(entryNumber).get("amount"); - } - - private void checkJournalEntry(final Integer officeId, final Account account, final String date, final JournalEntry... accountEntries) { - final String url = createURLForGettingAccountEntries(account, date, officeId); - final ArrayList<HashMap> response = Utils.performServerGet(this.requestSpec, this.responseSpec, url, "pageItems"); - for (int i = 0; i < accountEntries.length; i++) { - assertThat(getEntryValueFromJournalEntry(response, i), equalTo(accountEntries[i].getTransactionType())); - assertThat(getTransactionAmountFromJournalEntry(response, i), equalTo(accountEntries[i].getTransactionAmount())); - } - } - - private String createURLForGettingAccountEntries(final Account account, final String date, final Integer officeId) { - String url = new String("/fineract-provider/api/v1/journalentries?glAccountId=" + account.getAccountID() + "&type=" - + account.getAccountType() + "&fromDate=" + date + "&toDate=" + date + "&tenantIdentifier=default" - + "&orderBy=id&sortOrder=desc&locale=en&dateFormat=dd MMMM yyyy"); - if (officeId != null) { - url = url + "&officeId=" + officeId; - } - return url; - } - - private ArrayList<HashMap> getJournalEntriesByTransactionId(final String transactionId) { - final String url = createURLForGettingAccountEntriesByTransactionId(transactionId); - final ArrayList<HashMap> response = Utils.performServerGet(this.requestSpec, this.responseSpec, url, "pageItems"); - return response; - } - - private String createURLForGettingAccountEntriesByTransactionId(final String transactionId) { - return new String("/fineract-provider/api/v1/journalentries?transactionId=" + transactionId + "&tenantIdentifier=default" - + "&orderBy=id&sortOrder=desc&locale=en&dateFormat=dd MMMM yyyy"); - } - -}
http://git-wip-us.apache.org/repos/asf/incubator-fineract/blob/66cee785/fineract-provider/src/integrationTest/java/org/apache/fineract/integrationtests/common/accounting/PeriodicAccrualAccountingHelper.java ---------------------------------------------------------------------- diff --git a/fineract-provider/src/integrationTest/java/org/apache/fineract/integrationtests/common/accounting/PeriodicAccrualAccountingHelper.java b/fineract-provider/src/integrationTest/java/org/apache/fineract/integrationtests/common/accounting/PeriodicAccrualAccountingHelper.java deleted file mode 100755 index 843f8e0..0000000 --- a/fineract-provider/src/integrationTest/java/org/apache/fineract/integrationtests/common/accounting/PeriodicAccrualAccountingHelper.java +++ /dev/null @@ -1,53 +0,0 @@ -/** - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.fineract.integrationtests.common.accounting; - -import java.util.HashMap; - -import org.apache.fineract.integrationtests.common.Utils; - -import com.google.gson.Gson; -import com.jayway.restassured.specification.RequestSpecification; -import com.jayway.restassured.specification.ResponseSpecification; - -public class PeriodicAccrualAccountingHelper { - - private static final String PERIODIC_ACCRUAL_URL = "/fineract-provider/api/v1/runaccruals"; - private final RequestSpecification requestSpec; - private final ResponseSpecification responseSpec; - - public PeriodicAccrualAccountingHelper(final RequestSpecification requestSpec, final ResponseSpecification responseSpec) { - this.requestSpec = requestSpec; - this.responseSpec = responseSpec; - } - - public Object runPeriodicAccrualAccounting(String date) { - String json = getRunPeriodicAccrual(date); - return Utils.performServerPost(this.requestSpec, this.responseSpec, PERIODIC_ACCRUAL_URL + "?" + Utils.TENANT_IDENTIFIER, json, ""); - } - - private String getRunPeriodicAccrual(String date) { - final HashMap<String, String> map = new HashMap<>(); - map.put("dateFormat", "dd MMMM yyyy"); - map.put("locale", "en_GB"); - map.put("tillDate", date); - return new Gson().toJson(map); - } - -} http://git-wip-us.apache.org/repos/asf/incubator-fineract/blob/66cee785/fineract-provider/src/integrationTest/java/org/apache/fineract/integrationtests/common/charges/ChargesHelper.java ---------------------------------------------------------------------- diff --git a/fineract-provider/src/integrationTest/java/org/apache/fineract/integrationtests/common/charges/ChargesHelper.java b/fineract-provider/src/integrationTest/java/org/apache/fineract/integrationtests/common/charges/ChargesHelper.java deleted file mode 100755 index 6b17468..0000000 --- a/fineract-provider/src/integrationTest/java/org/apache/fineract/integrationtests/common/charges/ChargesHelper.java +++ /dev/null @@ -1,412 +0,0 @@ -/** - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.fineract.integrationtests.common.charges; - -import java.util.ArrayList; -import java.util.HashMap; - -import org.apache.fineract.integrationtests.common.CommonConstants; -import org.apache.fineract.integrationtests.common.Utils; - -import com.google.gson.Gson; -import com.jayway.restassured.specification.RequestSpecification; -import com.jayway.restassured.specification.ResponseSpecification; - -@SuppressWarnings({ "rawtypes", "unchecked" }) -public class ChargesHelper { - - private static final String CHARGES_URL = "/fineract-provider/api/v1/charges"; - private static final String CREATE_CHARGES_URL = CHARGES_URL + "?" + Utils.TENANT_IDENTIFIER; - - private static final Integer CHARGE_APPLIES_TO_LOAN = 1; - private static final Integer CHARGE_APPLIES_TO_SAVINGS = 2; - private static final Integer CHARGE_APPLIES_TO_CLIENT = 3; - - private static final Integer CHARGE_DISBURSEMENT_FEE = 1; - private static final Integer CHARGE_SPECIFIED_DUE_DATE = 2; - private static final Integer CHARGE_SAVINGS_ACTIVATION_FEE = 3; - private static final Integer CHARGE_WITHDRAWAL_FEE = 5; - private static final Integer CHARGE_ANNUAL_FEE = 6; - private static final Integer CHARGE_MONTHLY_FEE = 7; - private static final Integer CHARGE_INSTALLMENT_FEE = 8; - private static final Integer CHARGE_OVERDUE_INSTALLMENT_FEE = 9; - private static final Integer CHARGE_OVERDRAFT_FEE = 10; - private static final Integer WEEKLY_FEE = 11; - - private static final Integer CHARGE_CLIENT_SPECIFIED_DUE_DATE = 1; - - public static final Integer CHARGE_CALCULATION_TYPE_FLAT = 1; - public static final Integer CHARGE_CALCULATION_TYPE_PERCENTAGE_AMOUNT = 2; - public static final Integer CHARGE_CALCULATION_TYPE_PERCENTAGE_AMOUNT_AND_INTEREST = 3; - public static final Integer CHARGE_CALCULATION_TYPE_PERCENTAGE_INTEREST = 4; - - private static final Integer CHARGE_PAYMENT_MODE_REGULAR = 0; - private static final Integer CHARGE_PAYMENT_MODE_ACCOUNT_TRANSFER = 1; - - private static final Integer CHARGE_FEE_FREQUENCY_DAYS = 0; - private static final Integer CHARGE_FEE_FREQUENCY_WEEKS = 1; - private static final Integer CHARGE_FEE_FREQUENCY_MONTHS = 2; - private static final Integer CHARGE_FEE_FREQUENCY_YEARS = 3; - - private final static boolean active = true; - private final static boolean penalty = true; - private final static String amount = "100"; - private final static String currencyCode = "USD"; - public final static String feeOnMonthDay = "04 March"; - private final static String monthDayFormat = "dd MMM"; - - public static String getSavingsSpecifiedDueDateJSON() { - final HashMap<String, Object> map = populateDefaultsForSavings(); - map.put("chargeTimeType", CHARGE_SPECIFIED_DUE_DATE); - map.put("feeInterval", 2); - String chargesCreateJson = new Gson().toJson(map); - System.out.println(chargesCreateJson); - return chargesCreateJson; - } - - public static String getSavingsActivationFeeJSON() { - final HashMap<String, Object> map = populateDefaultsForSavings(); - map.put("chargeTimeType", CHARGE_SAVINGS_ACTIVATION_FEE); - String chargesCreateJson = new Gson().toJson(map); - System.out.println(chargesCreateJson); - return chargesCreateJson; - } - - public static String getSavingsWithdrawalFeeJSON() { - final HashMap<String, Object> map = populateDefaultsForSavings(); - map.put("chargeTimeType", CHARGE_WITHDRAWAL_FEE); - String chargesCreateJson = new Gson().toJson(map); - System.out.println(chargesCreateJson); - return chargesCreateJson; - } - - public static String getSavingsAnnualFeeJSON() { - final HashMap<String, Object> map = populateDefaultsForSavings(); - map.put("feeOnMonthDay", ChargesHelper.feeOnMonthDay); - map.put("chargeTimeType", CHARGE_ANNUAL_FEE); - String chargesCreateJson = new Gson().toJson(map); - System.out.println(chargesCreateJson); - return chargesCreateJson; - } - - public static String getSavingsMonthlyFeeJSON() { - final HashMap<String, Object> map = populateDefaultsForSavings(); - map.put("feeOnMonthDay", ChargesHelper.feeOnMonthDay); - map.put("chargeTimeType", CHARGE_MONTHLY_FEE); - map.put("feeInterval", 2); - String chargesCreateJson = new Gson().toJson(map); - System.out.println(chargesCreateJson); - return chargesCreateJson; - } - - public static String getSavingsWeeklyFeeJSON() { - final HashMap<String, Object> map = populateDefaultsForSavings(); - map.put("chargeTimeType", WEEKLY_FEE); - map.put("feeInterval", 1); - String chargesCreateJson = new Gson().toJson(map); - System.out.println(chargesCreateJson); - return chargesCreateJson; - } - - public static String getSavingsOverdraftFeeJSON() { - final HashMap<String, Object> map = populateDefaultsForSavings(); - map.put("chargeTimeType", CHARGE_OVERDRAFT_FEE); - String chargesCreateJson = new Gson().toJson(map); - System.out.println(chargesCreateJson); - return chargesCreateJson; - } - - public static HashMap<String, Object> populateDefaultsForSavings() { - final HashMap<String, Object> map = new HashMap<>(); - map.put("active", ChargesHelper.active); - map.put("amount", ChargesHelper.amount); - map.put("chargeAppliesTo", ChargesHelper.CHARGE_APPLIES_TO_SAVINGS); - map.put("chargeCalculationType", ChargesHelper.CHARGE_CALCULATION_TYPE_FLAT); - map.put("currencyCode", ChargesHelper.currencyCode); - map.put("locale", CommonConstants.locale); - map.put("monthDayFormat", ChargesHelper.monthDayFormat); - map.put("name", Utils.randomNameGenerator("Charge_Savings_", 6)); - return map; - } - - public static String getLoanDisbursementJSON() { - return getLoanDisbursementJSON(ChargesHelper.CHARGE_CALCULATION_TYPE_FLAT, ChargesHelper.amount); - } - - public static String getLoanDisbursementJSON(final Integer chargeCalculationType, final String amount) { - return getLoanDisbursementJSON(chargeCalculationType, amount, ChargesHelper.CHARGE_PAYMENT_MODE_REGULAR); - } - - public static String getLoanDisbursementAccountTransferJSON(final Integer chargeCalculationType, final String amount) { - return getLoanDisbursementJSON(chargeCalculationType, amount, ChargesHelper.CHARGE_PAYMENT_MODE_ACCOUNT_TRANSFER); - } - - public static String getLoanDisbursementJSON(final Integer chargeCalculationType, final String amount, final Integer paymentmode) { - final HashMap<String, Object> map = populateDefaultsForLoan(); - map.put("chargeTimeType", CHARGE_DISBURSEMENT_FEE); - map.put("chargePaymentMode", paymentmode); - map.put("amount", amount); - map.put("chargeCalculationType", chargeCalculationType); - String chargesCreateJson = new Gson().toJson(map); - System.out.println(chargesCreateJson); - return chargesCreateJson; - } - - public static String getLoanSpecifiedDueDateJSON() { - return getLoanSpecifiedDueDateJSON(ChargesHelper.CHARGE_CALCULATION_TYPE_FLAT, ChargesHelper.amount, ChargesHelper.penalty); - } - - public static String getLoanSpecifiedDueDateJSON(final Integer chargeCalculationType, final String amount, boolean penalty) { - return getLoanSpecifiedDueDateJSON(chargeCalculationType, amount, penalty, ChargesHelper.CHARGE_PAYMENT_MODE_REGULAR); - } - - public static String getLoanSpecifiedDueDateJSON(final Integer chargeCalculationType, final String amount, final boolean penalty, - final Integer paymentMode) { - final HashMap<String, Object> map = populateDefaultsForLoan(); - map.put("chargeTimeType", CHARGE_SPECIFIED_DUE_DATE); - map.put("chargePaymentMode", paymentMode); - map.put("penalty", penalty); - map.put("amount", amount); - map.put("chargeCalculationType", chargeCalculationType); - - String chargesCreateJson = new Gson().toJson(map); - System.out.println(chargesCreateJson); - return chargesCreateJson; - } - - public static String getLoanSpecifiedDueDateWithAccountTransferJSON(final Integer chargeCalculationType, final String amount, - boolean penalty) { - return getLoanSpecifiedDueDateJSON(chargeCalculationType, amount, penalty, ChargesHelper.CHARGE_PAYMENT_MODE_ACCOUNT_TRANSFER); - } - - public static String getLoanSpecifiedDueDateWithAccountTransferJSON() { - return getLoanSpecifiedDueDateJSON(ChargesHelper.CHARGE_CALCULATION_TYPE_FLAT, ChargesHelper.amount, ChargesHelper.penalty, - ChargesHelper.CHARGE_PAYMENT_MODE_ACCOUNT_TRANSFER); - } - - public static String getLoanInstallmentJSON(final Integer chargeCalculationType, final String amount, boolean penalty) { - return getLoanInstallmentJSON(chargeCalculationType, amount, penalty, ChargesHelper.CHARGE_PAYMENT_MODE_REGULAR); - } - - public static String getLoanInstallmentJSON(final Integer chargeCalculationType, final String amount, final boolean penalty, - final Integer paymentMode) { - final HashMap<String, Object> map = populateDefaultsForLoan(); - map.put("chargeTimeType", CHARGE_INSTALLMENT_FEE); - map.put("chargePaymentMode", paymentMode); - map.put("penalty", penalty); - map.put("amount", amount); - map.put("chargeCalculationType", chargeCalculationType); - - String chargesCreateJson = new Gson().toJson(map); - System.out.println(chargesCreateJson); - return chargesCreateJson; - } - - public static String getLoanInstallmentWithAccountTransferJSON(final Integer chargeCalculationType, final String amount, boolean penalty) { - return getLoanInstallmentJSON(chargeCalculationType, amount, penalty, ChargesHelper.CHARGE_PAYMENT_MODE_ACCOUNT_TRANSFER); - } - - public static String getLoanInstallmentFeeJSON() { - return getLoanInstallmentJSON(ChargesHelper.CHARGE_CALCULATION_TYPE_FLAT, ChargesHelper.amount, ChargesHelper.penalty); - } - - public static String getLoanOverdueFeeJSON() { - final HashMap<String, Object> map = populateDefaultsForLoan(); - map.put("penalty", ChargesHelper.penalty); - map.put("chargePaymentMode", ChargesHelper.CHARGE_PAYMENT_MODE_REGULAR); - map.put("chargeTimeType", CHARGE_OVERDUE_INSTALLMENT_FEE); - map.put("feeFrequency", ChargesHelper.CHARGE_FEE_FREQUENCY_MONTHS); - map.put("feeOnMonthDay", ChargesHelper.feeOnMonthDay); - map.put("feeInterval", 2); - String chargesCreateJson = new Gson().toJson(map); - System.out.println(chargesCreateJson); - return chargesCreateJson; - } - - public static String getLoanOverdueFeeJSONWithCalculattionTypePercentage() { - final HashMap<String, Object> map = populateDefaultsForLoan(); - map.put("penalty", ChargesHelper.penalty); - map.put("amount", "10"); - map.put("chargePaymentMode", ChargesHelper.CHARGE_PAYMENT_MODE_REGULAR); - map.put("chargeTimeType", CHARGE_OVERDUE_INSTALLMENT_FEE); - map.put("chargeCalculationType", ChargesHelper.CHARGE_CALCULATION_TYPE_PERCENTAGE_AMOUNT_AND_INTEREST); - String chargesCreateJson = new Gson().toJson(map); - System.out.println(chargesCreateJson); - return chargesCreateJson; - } - - public static HashMap<String, Object> populateDefaultsForLoan() { - final HashMap<String, Object> map = new HashMap<>(); - map.put("active", ChargesHelper.active); - map.put("amount", ChargesHelper.amount); - map.put("chargeAppliesTo", ChargesHelper.CHARGE_APPLIES_TO_LOAN); - map.put("chargeCalculationType", ChargesHelper.CHARGE_CALCULATION_TYPE_FLAT); - map.put("currencyCode", ChargesHelper.currencyCode); - map.put("locale", CommonConstants.locale); - map.put("monthDayFormat", ChargesHelper.monthDayFormat); - map.put("name", Utils.randomNameGenerator("Charge_Loans_", 6)); - return map; - } - - public static HashMap<String, Object> populateDefaultsClientCharge() { - final HashMap<String, Object> map = new HashMap<>(); - map.put("active", ChargesHelper.active); - map.put("amount", ChargesHelper.amount); - map.put("chargeAppliesTo", ChargesHelper.CHARGE_APPLIES_TO_CLIENT); - map.put("chargeCalculationType", ChargesHelper.CHARGE_CALCULATION_TYPE_FLAT); - map.put("chargeTimeType",ChargesHelper.CHARGE_SPECIFIED_DUE_DATE); - map.put("currencyCode", ChargesHelper.currencyCode); - map.put("locale", CommonConstants.locale); - map.put("monthDayFormat", ChargesHelper.monthDayFormat); - map.put("name", Utils.randomNameGenerator("Charge_client_", 8)); - return map; - } - - public static Integer createCharges(final RequestSpecification requestSpec, final ResponseSpecification responseSpec, - final String request) { - return Utils.performServerPost(requestSpec, responseSpec, CREATE_CHARGES_URL, request, "resourceId"); - } - - public static ArrayList<HashMap> getCharges(final RequestSpecification requestSpec, final ResponseSpecification responseSpec) { - return (ArrayList) Utils.performServerGet(requestSpec, responseSpec, CHARGES_URL + "?" + Utils.TENANT_IDENTIFIER, ""); - } - - public static HashMap getChargeById(final RequestSpecification requestSpec, final ResponseSpecification responseSpec, - final Integer chargeId) { - return Utils.performServerGet(requestSpec, responseSpec, CHARGES_URL + "/" + chargeId + "?" + Utils.TENANT_IDENTIFIER, ""); - } - - public static HashMap getChargeChanges(final RequestSpecification requestSpec, final ResponseSpecification responseSpec, - final Integer chargeId) { - return Utils.performServerGet(requestSpec, responseSpec, CHARGES_URL + "/" + chargeId + "?" + Utils.TENANT_IDENTIFIER, - CommonConstants.RESPONSE_CHANGES); - } - - public static HashMap updateCharges(final RequestSpecification requestSpec, final ResponseSpecification responseSpec, - final Integer chargeId, final String request) { - return Utils.performServerPut(requestSpec, responseSpec, CHARGES_URL + "/" + chargeId + "?" + Utils.TENANT_IDENTIFIER, request, - CommonConstants.RESPONSE_CHANGES); - } - - public static Integer deleteCharge(final ResponseSpecification responseSpec, final RequestSpecification requestSpec, - final Integer chargeId) { - return Utils.performServerDelete(requestSpec, responseSpec, CHARGES_URL + "/" + chargeId + "?" + Utils.TENANT_IDENTIFIER, - CommonConstants.RESPONSE_RESOURCE_ID); - } - - public static String getModifyChargeJSON() { - final HashMap<String, Object> map = new HashMap<>(); - map.put("locale", CommonConstants.locale); - map.put("amount", "200.0"); - String json = new Gson().toJson(map); - System.out.println(json); - return json; - } - - public static String getModifyWithdrawalFeeSavingsChargeJSON() { - final HashMap<String, Object> map = new HashMap<>(); - map.put("locale", CommonConstants.locale); - map.put("chargeCalculationType", CHARGE_CALCULATION_TYPE_PERCENTAGE_AMOUNT); - String json = new Gson().toJson(map); - System.out.println(json); - return json; - } - - public static String getModifyChargeAsPecentageAmountJSON() { - final HashMap<String, Object> map = new HashMap<>(); - map.put("locale", CommonConstants.locale); - map.put("chargeCalculationType", CHARGE_CALCULATION_TYPE_PERCENTAGE_AMOUNT); - map.put("chargePaymentMode", CHARGE_PAYMENT_MODE_ACCOUNT_TRANSFER); - String json = new Gson().toJson(map); - System.out.println(json); - return json; - } - - public static String getModifyChargeAsPecentageLoanAmountWithInterestJSON() { - final HashMap<String, Object> map = new HashMap<>(); - map.put("locale", CommonConstants.locale); - map.put("chargeCalculationType", CHARGE_CALCULATION_TYPE_PERCENTAGE_AMOUNT_AND_INTEREST); - map.put("chargePaymentMode", CHARGE_PAYMENT_MODE_ACCOUNT_TRANSFER); - String json = new Gson().toJson(map); - System.out.println(json); - return json; - } - - public static String getModifyChargeAsPercentageInterestJSON() { - final HashMap<String, Object> map = new HashMap<>(); - map.put("locale", CommonConstants.locale); - map.put("chargeCalculationType", CHARGE_CALCULATION_TYPE_PERCENTAGE_INTEREST); - map.put("chargePaymentMode", CHARGE_PAYMENT_MODE_ACCOUNT_TRANSFER); - String json = new Gson().toJson(map); - System.out.println(json); - return json; - } - - public static String getModifyChargeFeeFrequencyAsDaysJSON() { - final HashMap<String, Object> map = new HashMap<>(); - map.put("locale", CommonConstants.locale); - map.put("feeFrequency", ChargesHelper.CHARGE_FEE_FREQUENCY_DAYS); - map.put("feeInterval", 2); - String json = new Gson().toJson(map); - System.out.println(json); - return json; - } - - public static String getModifyChargeFeeFrequencyAsWeeksJSON() { - final HashMap<String, Object> map = new HashMap<>(); - map.put("locale", CommonConstants.locale); - map.put("feeFrequency", ChargesHelper.CHARGE_FEE_FREQUENCY_WEEKS); - map.put("feeInterval", 2); - String json = new Gson().toJson(map); - System.out.println(json); - return json; - } - - public static String getModifyChargeFeeFrequencyAsMonthsJSON() { - final HashMap<String, Object> map = new HashMap<>(); - map.put("locale", CommonConstants.locale); - map.put("feeFrequency", ChargesHelper.CHARGE_FEE_FREQUENCY_MONTHS); - map.put("feeInterval", 2); - String json = new Gson().toJson(map); - System.out.println(json); - return json; - } - - public static String getModifyChargeFeeFrequencyAsYearsJSON() { - final HashMap<String, Object> map = new HashMap<>(); - map.put("locale", CommonConstants.locale); - map.put("feeFrequency", ChargesHelper.CHARGE_FEE_FREQUENCY_YEARS); - map.put("feeInterval", 2); - String json = new Gson().toJson(map); - System.out.println(json); - return json; - } - - public static String getChargeSpecifiedDueDateJSON() { - final HashMap<String, Object> map = populateDefaultsClientCharge(); - String chargesCreateJson = new Gson().toJson(map); - System.out.println("chargesCreateJson:"+chargesCreateJson); - return chargesCreateJson; - } - - public static String applyCharge(RequestSpecification requestSpec,ResponseSpecification responseSpec, String chargeId,String json) { - return Utils.performServerPost(requestSpec, responseSpec, CHARGES_URL + "/" + chargeId + "?" + Utils.TENANT_IDENTIFIER, json,"status"); - - } -} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-fineract/blob/66cee785/fineract-provider/src/integrationTest/java/org/apache/fineract/integrationtests/common/fixeddeposit/FixedDepositAccountHelper.java ---------------------------------------------------------------------- diff --git a/fineract-provider/src/integrationTest/java/org/apache/fineract/integrationtests/common/fixeddeposit/FixedDepositAccountHelper.java b/fineract-provider/src/integrationTest/java/org/apache/fineract/integrationtests/common/fixeddeposit/FixedDepositAccountHelper.java deleted file mode 100644 index fa48717..0000000 --- a/fineract-provider/src/integrationTest/java/org/apache/fineract/integrationtests/common/fixeddeposit/FixedDepositAccountHelper.java +++ /dev/null @@ -1,490 +0,0 @@ -/** - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.fineract.integrationtests.common.fixeddeposit; - -import java.util.ArrayList; -import java.util.Calendar; -import java.util.HashMap; -import java.util.List; - -import org.apache.fineract.integrationtests.common.CommonConstants; -import org.apache.fineract.integrationtests.common.Utils; - -import com.google.gson.Gson; -import com.jayway.restassured.specification.RequestSpecification; -import com.jayway.restassured.specification.ResponseSpecification; - -@SuppressWarnings({ "unused", "rawtypes" }) -public class FixedDepositAccountHelper { - - private final RequestSpecification requestSpec; - private final ResponseSpecification responseSpec; - - public FixedDepositAccountHelper(final RequestSpecification requestSpec, final ResponseSpecification responseSpec) { - this.requestSpec = requestSpec; - this.responseSpec = responseSpec; - } - - private static final String FIXED_DEPOSIT_ACCOUNT_URL = "/fineract-provider/api/v1/fixeddepositaccounts"; - private static final String APPLY_FIXED_DEPOSIT_ACCOUNT_URL = FIXED_DEPOSIT_ACCOUNT_URL + "?" + Utils.TENANT_IDENTIFIER; - private static final String APPROVE_FIXED_DEPOSIT_COMMAND = "approve"; - private static final String UNDO_APPROVAL_FIXED_DEPOSIT_COMMAND = "undoapproval"; - private static final String REJECT_FIXED_DEPOSIT_COMMAND = "reject"; - private static final String WITHDRAWN_BY_CLIENT_FIXED_DEPOSIT_COMMAND = "withdrawnByApplicant"; - private static final String ACTIVATE_FIXED_DEPOSIT_COMMAND = "activate"; - private static final String CLOSE_FIXED_DEPOSIT_COMMAND = "close"; - private static final String POST_INTEREST_FIXED_DEPOSIT_COMMAND = "postInterest"; - private static final String CALCULATE_INTEREST_FIXED_DEPOSIT_COMMAND = "calculateInterest"; - private static final String CALCULATE_PREMATURE_AMOUNT_COMMAND = "calculatePrematureAmount"; - private static final String PREMATURE_CLOSE_COMMAND = "prematureClose"; - - private static final String LOCALE = "en_GB"; - private static final String DIGITS_AFTER_DECIMAL = "4"; - private static final String IN_MULTIPLES_OF = "100"; - private static final String USD = "USD"; - public static final String DAYS = "0"; - private static final String WEEKS = "1"; - private static final String MONTHS = "2"; - private static final String YEARS = "3"; - private static final String DAILY = "1"; - private static final String MONTHLY = "4"; - private static final String QUARTERLY = "5"; - private static final String BI_ANNUALLY = "6"; - private static final String ANNUALLY = "7"; - private static final String INTEREST_CALCULATION_USING_DAILY_BALANCE = "1"; - private static final String INTEREST_CALCULATION_USING_AVERAGE_DAILY_BALANCE = "2"; - private static final String DAYS_360 = "360"; - private static final String DAYS_365 = "365"; - public final static String depositAmount = "100000"; - - private String interestCompoundingPeriodType = MONTHLY; - private String interestPostingPeriodType = MONTHLY; - private String interestCalculationType = INTEREST_CALCULATION_USING_DAILY_BALANCE; - private String lockinPeriodFrequency = "1"; - private String lockingPeriodFrequencyType = MONTHS; - private final String minDepositTerm = "6"; - private final String minDepositTermTypeId = MONTHS; - private final String maxDepositTerm = "10"; - private final String maxDepositTermTypeId = YEARS; - private final String inMultiplesOfDepositTerm = "2"; - private final String inMultiplesOfDepositTermTypeId = MONTHS; - private final String preClosurePenalInterest = "2"; - private String interestCalculationDaysInYearType = DAYS_365; - private final boolean preClosurePenalApplicable = true; - private final boolean isActiveChart = true; - private final String currencyCode = USD; - - private final String depositPeriod = "14"; - private final String depositPeriodFrequencyId = MONTHS; - private String submittedOnDate = ""; - private String savingsId = null; - private boolean transferInterest = false; - - public String build(final String clientId, final String productId, final String validFrom, final String validTo, - final String penalInterestType) { - final HashMap<String, Object> map = new HashMap<>(); - - List<HashMap<String, String>> chartSlabs = new ArrayList<HashMap<String, String>>(); - HashMap<String, String> chartSlabsMap1 = new HashMap<>(); - chartSlabsMap1.put("description", "First"); - chartSlabsMap1.put("periodType", MONTHS); - chartSlabsMap1.put("fromPeriod", "1"); - chartSlabsMap1.put("toPeriod", "6"); - chartSlabsMap1.put("annualInterestRate", "5"); - chartSlabsMap1.put("locale", LOCALE); - chartSlabs.add(0, chartSlabsMap1); - - HashMap<String, String> chartSlabsMap2 = new HashMap<>(); - chartSlabsMap2.put("description", "Second"); - chartSlabsMap2.put("periodType", MONTHS); - chartSlabsMap2.put("fromPeriod", "7"); - chartSlabsMap2.put("toPeriod", "12"); - chartSlabsMap2.put("annualInterestRate", "6"); - chartSlabsMap2.put("locale", LOCALE); - chartSlabs.add(1, chartSlabsMap2); - - HashMap<String, String> chartSlabsMap3 = new HashMap<>(); - chartSlabsMap3.put("description", "Third"); - chartSlabsMap3.put("periodType", MONTHS); - chartSlabsMap3.put("fromPeriod", "13"); - chartSlabsMap3.put("toPeriod", "18"); - chartSlabsMap3.put("annualInterestRate", "7"); - chartSlabsMap3.put("locale", LOCALE); - chartSlabs.add(2, chartSlabsMap3); - - HashMap<String, String> chartSlabsMap4 = new HashMap<>(); - chartSlabsMap4.put("description", "Fourth"); - chartSlabsMap4.put("periodType", MONTHS); - chartSlabsMap4.put("fromPeriod", "19"); - chartSlabsMap4.put("toPeriod", "24"); - chartSlabsMap4.put("annualInterestRate", "8"); - chartSlabsMap4.put("locale", LOCALE); - chartSlabs.add(3, chartSlabsMap4); - - List<HashMap<String, Object>> charts = new ArrayList<HashMap<String, Object>>(); - HashMap<String, Object> chartsMap = new HashMap<>(); - chartsMap.put("fromDate", validFrom); - chartsMap.put("endDate", validTo); - chartsMap.put("dateFormat", "dd MMMM yyyy"); - chartsMap.put("locale", LOCALE); - chartsMap.put("isActiveChart", this.isActiveChart); - chartsMap.put("chartSlabs", chartSlabs); - charts.add(chartsMap); - - map.put("charts", charts); - map.put("productId", productId); - map.put("clientId", clientId); - map.put("interestCalculationDaysInYearType", this.interestCalculationDaysInYearType); - map.put("locale", LOCALE); - map.put("dateFormat", "dd MMMM yyyy"); - map.put("monthDayFormat", "dd MMM"); - map.put("interestCalculationType", this.interestCalculationType); - map.put("interestCompoundingPeriodType", this.interestCompoundingPeriodType); - map.put("interestPostingPeriodType", this.interestPostingPeriodType); - map.put("lockinPeriodFrequency", this.lockinPeriodFrequency); - map.put("lockinPeriodFrequencyType", this.lockingPeriodFrequencyType); - map.put("preClosurePenalApplicable", "true"); - map.put("minDepositTermTypeId", this.minDepositTermTypeId); - map.put("minDepositTerm", this.minDepositTerm); - map.put("maxDepositTermTypeId", this.maxDepositTermTypeId); - map.put("maxDepositTerm", this.maxDepositTerm); - map.put("preClosurePenalApplicable", this.preClosurePenalApplicable); - map.put("inMultiplesOfDepositTerm", this.inMultiplesOfDepositTerm); - map.put("inMultiplesOfDepositTermTypeId", this.inMultiplesOfDepositTermTypeId); - map.put("preClosurePenalInterest", this.preClosurePenalInterest); - map.put("preClosurePenalInterestOnTypeId", penalInterestType); - map.put("depositAmount", depositAmount); - map.put("depositPeriod", this.depositPeriod); - map.put("depositPeriodFrequencyId", this.depositPeriodFrequencyId); - map.put("submittedOnDate", this.submittedOnDate); - map.put("linkAccountId", savingsId); - map.put("transferInterestToSavings", transferInterest); - - String fixedDepositAccountJson = new Gson().toJson(map); - System.out.println(fixedDepositAccountJson); - return fixedDepositAccountJson; - } - - public static Integer applyFixedDepositApplication(final String fixedDepositAccountAsJson, final RequestSpecification requestSpec, - final ResponseSpecification responseSpec) { - System.out.println("--------------------- APPLYING FOR FIXED DEPOSIT ACCOUNT ------------------------"); - return Utils.performServerPost(requestSpec, responseSpec, APPLY_FIXED_DEPOSIT_ACCOUNT_URL, fixedDepositAccountAsJson, - CommonConstants.RESPONSE_RESOURCE_ID); - } - - public static HashMap getFixedDepositAccountById(final RequestSpecification requestSpec, final ResponseSpecification responseSpec, - final Integer accountID) { - final String GET_FIXED_DEPOSIT_BY_ID_URL = FIXED_DEPOSIT_ACCOUNT_URL + "/" + accountID + "?" + Utils.TENANT_IDENTIFIER; - System.out.println("------------------------ RETRIEVING FIXED DEPOSIT ACCOUNT BY ID -------------------------"); - return Utils.performServerGet(requestSpec, responseSpec, GET_FIXED_DEPOSIT_BY_ID_URL, ""); - } - - public HashMap getFixedDepositSummary(final Integer accountID) { - final String URL = FIXED_DEPOSIT_ACCOUNT_URL + "/" + accountID + "?" + Utils.TENANT_IDENTIFIER; - final HashMap response = Utils.performServerGet(requestSpec, responseSpec, URL, "summary"); - return response; - } - - public static Float getInterestRate(ArrayList<ArrayList<HashMap>> interestSlabData, Integer depositPeriod) { - - Float annualInterestRate = 0.0f; - for (Integer slabIndex = 0; slabIndex < interestSlabData.get(0).size(); slabIndex++) { - Integer fromPeriod = (Integer) interestSlabData.get(0).get(slabIndex).get("fromPeriod"); - Integer toPeriod = (Integer) interestSlabData.get(0).get(slabIndex).get("toPeriod"); - if (depositPeriod >= fromPeriod && depositPeriod <= toPeriod) { - annualInterestRate = (Float) interestSlabData.get(0).get(slabIndex).get("annualInterestRate"); - break; - } - } - - return annualInterestRate; - } - - public static Float getPrincipalAfterCompoundingInterest(Calendar currentDate, Float principal, Integer depositPeriod, - double interestPerDay, Integer compoundingInterval, Integer postingInterval) { - - Float totalInterest = 0.0f; - Float interestEarned = 0.0f; - - for (int i = 1; i <= depositPeriod; i++) { - Integer daysInMonth = currentDate.getActualMaximum(Calendar.DATE); - for (int j = 0; j < daysInMonth; j++) { - - interestEarned = (float) (principal * interestPerDay); - totalInterest += interestEarned; - if (compoundingInterval == 0) { - principal += interestEarned; - } - } - if ((i % postingInterval) == 0 || i == depositPeriod) { - if (compoundingInterval != 0) { - principal += totalInterest; - } - totalInterest = 0.0f; - System.out.println(principal); - - } - currentDate.add(Calendar.MONTH, 1); - interestEarned = 0.0f; - } - return principal; - } - - public HashMap updateFixedDepositAccount(final String clientID, final String productID, final String accountID, final String validFrom, - final String validTo, final String penalInterestType, final String submittedOnDate) { - - final String fixedDepositApplicationJSON = new FixedDepositAccountHelper(this.requestSpec, this.responseSpec) // - .withSubmittedOnDate(submittedOnDate) // - .build(clientID, productID, validFrom, validTo, penalInterestType); - - return Utils.performServerPut(this.requestSpec, this.responseSpec, FIXED_DEPOSIT_ACCOUNT_URL + "/" + accountID + "?" - + Utils.TENANT_IDENTIFIER, fixedDepositApplicationJSON, CommonConstants.RESPONSE_CHANGES); - } - - public HashMap updateInterestCalculationConfigForFixedDeposit(final String clientID, final String productID, final String accountID, - final String submittedOnDate, final String validFrom, final String validTo, final String numberOfDaysPerYear, - final String penalInterestType, final String interestCalculationType, final String interestCompoundingPeriodType, - final String interestPostingPeriodType) { - - final String fixedDepositApplicationJSON = new FixedDepositAccountHelper(this.requestSpec, this.responseSpec) // - .withSubmittedOnDate(submittedOnDate) // - .withNumberOfDaysPerYear(numberOfDaysPerYear) // - .withInterestCalculationPeriodType(interestCalculationType) // - .withInterestCompoundingPeriodType(interestCompoundingPeriodType) // - .withInterestPostingPeriodType(interestPostingPeriodType) // - .build(clientID, productID, validFrom, validTo, penalInterestType); - - return Utils.performServerPut(this.requestSpec, this.responseSpec, FIXED_DEPOSIT_ACCOUNT_URL + "/" + accountID + "?" - + Utils.TENANT_IDENTIFIER, fixedDepositApplicationJSON, CommonConstants.RESPONSE_CHANGES); - } - - public HashMap approveFixedDeposit(final Integer fixedDepositAccountID, final String approvedOnDate) { - System.out.println("--------------------------------- APPROVING FIXED DEPOSIT APPLICATION ------------------------------------"); - return performFixedDepositApplicationActions(createFixedDepositOperationURL(APPROVE_FIXED_DEPOSIT_COMMAND, fixedDepositAccountID), - getApproveFixedDepositAccountAsJSON(approvedOnDate)); - } - - public HashMap undoApproval(final Integer fixedDepositAccountID) { - System.out.println("--------------------------------- UNDO APPROVING FIXED DEPOSIT APPLICATION -------------------------------"); - final String undoBodyJson = "{'note':'UNDO APPROVAL'}"; - return performFixedDepositApplicationActions( - createFixedDepositOperationURL(UNDO_APPROVAL_FIXED_DEPOSIT_COMMAND, fixedDepositAccountID), undoBodyJson); - } - - public HashMap rejectApplication(final Integer fixedDepositAccountID, final String rejectedOnDate) { - System.out.println("--------------------------------- REJECT FIXED DEPOSIT APPLICATION -------------------------------"); - return performFixedDepositApplicationActions(createFixedDepositOperationURL(REJECT_FIXED_DEPOSIT_COMMAND, fixedDepositAccountID), - getRejectedFixedDepositAsJSON(rejectedOnDate)); - } - - public HashMap withdrawApplication(final Integer fixedDepositAccountID, final String withdrawApplicationOnDate) { - System.out.println("--------------------------------- Withdraw FIXED DEPOSIT APPLICATION -------------------------------"); - return performFixedDepositApplicationActions( - createFixedDepositOperationURL(WITHDRAWN_BY_CLIENT_FIXED_DEPOSIT_COMMAND, fixedDepositAccountID), - getWithdrawnFixedDepositAccountAsJSON(withdrawApplicationOnDate)); - } - - public HashMap activateFixedDeposit(final Integer fixedDepositAccountID, final String activationDate) { - System.out.println("---------------------------------- ACTIVATING FIXED DEPOSIT APPLICATION ----------------------------------"); - return performFixedDepositApplicationActions(createFixedDepositOperationURL(ACTIVATE_FIXED_DEPOSIT_COMMAND, fixedDepositAccountID), - getActivatedFixedDepositAccountAsJSON(activationDate)); - } - - public Object deleteFixedDepositApplication(final Integer fixedDepositAccountID, final String jsonAttributeToGetBack) { - System.out.println("---------------------------------- DELETE FIXED DEPOSIT APPLICATION ----------------------------------"); - return Utils.performServerDelete(this.requestSpec, this.responseSpec, FIXED_DEPOSIT_ACCOUNT_URL + "/" + fixedDepositAccountID + "?" - + Utils.TENANT_IDENTIFIER, jsonAttributeToGetBack); - - } - - public Integer calculateInterestForFixedDeposit(final Integer fixedDepositAccountId) { - System.out.println("--------------------------------- CALCULATING INTEREST FOR FIXED DEPOSIT --------------------------------"); - return (Integer) performFixedDepositActions( - createFixedDepositCalculateInterestURL(CALCULATE_INTEREST_FIXED_DEPOSIT_COMMAND, fixedDepositAccountId), - getCalculatedInterestForFixedDepositApplicationAsJSON(), CommonConstants.RESPONSE_RESOURCE_ID); - } - - public Integer postInterestForFixedDeposit(final Integer fixedDepositAccountId) { - System.out.println("--------------------------------- POST INTEREST FOR FIXED DEPOSIT --------------------------------"); - return (Integer) performFixedDepositActions( - createFixedDepositCalculateInterestURL(POST_INTEREST_FIXED_DEPOSIT_COMMAND, fixedDepositAccountId), - getCalculatedInterestForFixedDepositApplicationAsJSON(), CommonConstants.RESPONSE_RESOURCE_ID); - } - - public HashMap calculatePrematureAmountForFixedDeposit(final Integer fixedDepositAccountId, final String closedOnDate) { - System.out.println("--------------------- CALCULATING PREMATURE AMOUNT FOR FIXED DEPOSIT ----------------------------"); - return (HashMap) performFixedDepositActions( - createFixedDepositCalculateInterestURL(CALCULATE_PREMATURE_AMOUNT_COMMAND, fixedDepositAccountId), - getCalculatedPrematureAmountForFixedDepositAccountAsJSON(closedOnDate), ""); - } - - public Object prematureCloseForFixedDeposit(final Integer fixedDepositAccountId, final String closedOnDate, final String closureType, - final Integer toSavingsId, final String jsonAttributeToGetBack) { - System.out.println("--------------------- PREMATURE CLOSE FOR FIXED DEPOSIT ----------------------------"); - return performFixedDepositActions(createFixedDepositCalculateInterestURL(PREMATURE_CLOSE_COMMAND, fixedDepositAccountId), - getPrematureCloseForFixedDepositAccountAsJSON(closedOnDate, closureType, toSavingsId), jsonAttributeToGetBack); - } - - private String getApproveFixedDepositAccountAsJSON(final String approvedOnDate) { - final HashMap<String, Object> map = new HashMap<>(); - map.put("locale", CommonConstants.locale); - map.put("dateFormat", CommonConstants.dateFormat); - map.put("approvedOnDate", approvedOnDate); - map.put("note", "Approval NOTE"); - String fixedDepositAccountApproveJson = new Gson().toJson(map); - System.out.println(fixedDepositAccountApproveJson); - return fixedDepositAccountApproveJson; - } - - private String getRejectedFixedDepositAsJSON(final String rejectedOnDate) { - final HashMap<String, Object> map = new HashMap<>(); - map.put("locale", CommonConstants.locale); - map.put("dateFormat", CommonConstants.dateFormat); - map.put("rejectedOnDate", rejectedOnDate); - map.put("note", "Rejected NOTE"); - String fixedDepositAccountJson = new Gson().toJson(map); - System.out.println(fixedDepositAccountJson); - return fixedDepositAccountJson; - } - - private String getWithdrawnFixedDepositAccountAsJSON(final String withdrawnApplicationOnDate) { - final HashMap<String, Object> map = new HashMap<>(); - map.put("locale", CommonConstants.locale); - map.put("dateFormat", CommonConstants.dateFormat); - map.put("withdrawnOnDate", withdrawnApplicationOnDate); - map.put("note", "Withdraw NOTE"); - String fixedDepositAccountJson = new Gson().toJson(map); - System.out.println(fixedDepositAccountJson); - return fixedDepositAccountJson; - } - - private String getActivatedFixedDepositAccountAsJSON(final String activationDate) { - final HashMap<String, Object> map = new HashMap<>(); - map.put("locale", CommonConstants.locale); - map.put("dateFormat", CommonConstants.dateFormat); - map.put("activatedOnDate", activationDate); - String fixedDepositAccountActivateJson = new Gson().toJson(map); - System.out.println(fixedDepositAccountActivateJson); - return fixedDepositAccountActivateJson; - } - - private String getCalculatedInterestForFixedDepositApplicationAsJSON() { - final HashMap<String, String> map = new HashMap<>(); - String fixedDepositAccountCalculatedInterestJson = new Gson().toJson(map); - System.out.println(fixedDepositAccountCalculatedInterestJson); - return fixedDepositAccountCalculatedInterestJson; - } - - private String getCalculatedPrematureAmountForFixedDepositAccountAsJSON(final String closedOnDate) { - final HashMap<String, Object> map = new HashMap<>(); - map.put("locale", CommonConstants.locale); - map.put("dateFormat", CommonConstants.dateFormat); - map.put("closedOnDate", closedOnDate); - String fixedDepositAccountPrematureClosureJson = new Gson().toJson(map); - System.out.println(fixedDepositAccountPrematureClosureJson); - return fixedDepositAccountPrematureClosureJson; - } - - private String getPrematureCloseForFixedDepositAccountAsJSON(final String closedOnDate, final String closureType, - final Integer toSavingsId) { - final HashMap<String, Object> map = new HashMap<>(); - map.put("locale", CommonConstants.locale); - map.put("dateFormat", CommonConstants.dateFormat); - map.put("closedOnDate", closedOnDate); - map.put("onAccountClosureId", closureType); - if (toSavingsId != null) { - map.put("toSavingsAccountId", toSavingsId); - map.put("transferDescription", "Transferring To Savings Account"); - } - String fixedDepositAccountPrematureCloseJson = new Gson().toJson(map); - System.out.println(fixedDepositAccountPrematureCloseJson); - return fixedDepositAccountPrematureCloseJson; - } - - private String createFixedDepositOperationURL(final String command, final Integer fixedDepositAccountID) { - return FIXED_DEPOSIT_ACCOUNT_URL + "/" + fixedDepositAccountID + "?command=" + command + "&" + Utils.TENANT_IDENTIFIER; - } - - private Object performFixedDepositActions(final String postURLForFixedDeposit, final String jsonToBeSent, - final String jsonAttributeToGetBack) { - return Utils.performServerPost(this.requestSpec, this.responseSpec, postURLForFixedDeposit, jsonToBeSent, jsonAttributeToGetBack); - } - - private HashMap performFixedDepositApplicationActions(final String postURLForFixedDepositAction, final String jsonToBeSent) { - HashMap status = null; - final HashMap response = Utils.performServerPost(this.requestSpec, this.responseSpec, postURLForFixedDepositAction, jsonToBeSent, - CommonConstants.RESPONSE_CHANGES); - if (response != null) { - status = (HashMap) response.get("status"); - } - return status; - } - - private String createFixedDepositCalculateInterestURL(final String command, final Integer fixedDepositAccountID) { - return FIXED_DEPOSIT_ACCOUNT_URL + "/" + fixedDepositAccountID + "?command=" + command + "&" + Utils.TENANT_IDENTIFIER; - } - - public static ArrayList retrieveAllFixedDepositAccounts(final RequestSpecification requestSpec, final ResponseSpecification responseSpec) { - System.out.println("-------------------- RETRIEVING ALL FIXED DEPOSIT ACCOUNTS ---------------------"); - final ArrayList response = Utils.performServerGet(requestSpec, responseSpec, FIXED_DEPOSIT_ACCOUNT_URL + "?" - + Utils.TENANT_IDENTIFIER, ""); - return response; - } - - public FixedDepositAccountHelper withSubmittedOnDate(final String fixedDepositApplicationSubmittedDate) { - this.submittedOnDate = fixedDepositApplicationSubmittedDate; - return this; - } - - public FixedDepositAccountHelper withNumberOfDaysPerYear(final String numberOfDaysPerYearTypeId) { - this.interestCalculationDaysInYearType = numberOfDaysPerYearTypeId; - return this; - } - - public FixedDepositAccountHelper withInterestCalculationPeriodType(final String interestCalculationTypeId) { - this.interestCalculationType = interestCalculationTypeId; - return this; - } - - public FixedDepositAccountHelper withInterestCompoundingPeriodType(final String interestCompoundingPeriodTypeId) { - this.interestCompoundingPeriodType = interestCompoundingPeriodTypeId; - return this; - } - - public FixedDepositAccountHelper withInterestPostingPeriodType(final String interestPostingPeriodTypeId) { - this.interestPostingPeriodType = interestPostingPeriodTypeId; - return this; - } - - public FixedDepositAccountHelper withSavings(final String savingsId) { - this.savingsId = savingsId; - return this; - } - - public FixedDepositAccountHelper transferInterest(final boolean transferInterest) { - this.transferInterest = transferInterest; - return this; - } - - public FixedDepositAccountHelper withLockinPeriodFrequency(final String lockingPeriodFrequencyType, final String lockinPeriodFrequency) { - this.lockingPeriodFrequencyType = lockingPeriodFrequencyType; - this.lockinPeriodFrequency = lockinPeriodFrequency; - return this; - } -} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-fineract/blob/66cee785/fineract-provider/src/integrationTest/java/org/apache/fineract/integrationtests/common/fixeddeposit/FixedDepositAccountStatusChecker.java ---------------------------------------------------------------------- diff --git a/fineract-provider/src/integrationTest/java/org/apache/fineract/integrationtests/common/fixeddeposit/FixedDepositAccountStatusChecker.java b/fineract-provider/src/integrationTest/java/org/apache/fineract/integrationtests/common/fixeddeposit/FixedDepositAccountStatusChecker.java deleted file mode 100644 index fca5cec..0000000 --- a/fineract-provider/src/integrationTest/java/org/apache/fineract/integrationtests/common/fixeddeposit/FixedDepositAccountStatusChecker.java +++ /dev/null @@ -1,94 +0,0 @@ -/** - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.fineract.integrationtests.common.fixeddeposit; - -import static org.junit.Assert.assertTrue; - -import java.util.HashMap; - -import org.apache.fineract.integrationtests.common.Utils; -import org.junit.Assert; - -import com.jayway.restassured.specification.RequestSpecification; -import com.jayway.restassured.specification.ResponseSpecification; - -@SuppressWarnings("rawtypes") -public class FixedDepositAccountStatusChecker { - - private static final String FIXED_DEPOSIT_ACCOUNT_URL = "/fineract-provider/api/v1/fixeddepositaccounts"; - - public static void verifyFixedDepositIsApproved(final HashMap fixedDepositStatusHashMap) { - System.out.println("-------------------- VERIFYING FIXED DEPOSIT APPLICATION IS APPROVED --------------------"); - assertTrue("Error in Approving Fixed deposit application", getStatus(fixedDepositStatusHashMap, "approved")); - System.out.println(fixedDepositStatusHashMap); - } - - public static void verifyFixedDepositIsPending(final HashMap fixedDepositStatusHashMap) { - System.out.println("-------------------- VERIFYING FIXED DEPOSIT APPLICATION IS PENDING --------------------"); - assertTrue("FIXED DEPOSIT ACCOUNT IS NOT IN PENDING STATE", getStatus(fixedDepositStatusHashMap, "submittedAndPendingApproval")); - System.out.println(fixedDepositStatusHashMap); - } - - public static void verifyFixedDepositIsActive(final HashMap fixedDepositStatusHashMap) { - System.out.println("----------------- VERIFYING FIXED DEPOSIT APPLICATION IS ACTIVE -----------------"); - assertTrue("ERROR IN ACTIVATING THE FIXED DEPOSIT APPLICATION", getStatus(fixedDepositStatusHashMap, "active")); - System.out.println(fixedDepositStatusHashMap); - } - - public static void verifyFixedDepositIsRejected(final HashMap fixedDepositStatusHashMap) { - System.out.println("-------------- VERIFYING FIXED DEPOSIT APPLICATION IS REJECTED ----------------"); - assertTrue("ERROR IN REJECTING THE FIXED DEPOSIT APPLICATION", getStatus(fixedDepositStatusHashMap, "rejected")); - System.out.println(fixedDepositStatusHashMap); - } - - public static void verifyFixedDepositIsWithdrawn(final HashMap fixedDepositStatusHashMap) { - System.out.println("---------------- VERIFYING FIXED DEPOSIT APPLICATION IS WITHDRAWN ----------------"); - assertTrue("ERROR IN WITHDRAW THE FIXED DEPOSIT APPLICATION", getStatus(fixedDepositStatusHashMap, "withdrawnByApplicant")); - System.out.println(fixedDepositStatusHashMap); - } - - public static void verifyFixedDepositAccountIsClosed(final HashMap fixedDepositStatusHashMap) { - System.out.println("--------------------- VERIFYING FIXED DEPOSIT APPLICATION IS CLOSED ---------------------"); - assertTrue("ERROR IN CLOSING THE FIXED DEPOSIT APPLICATION", getStatus(fixedDepositStatusHashMap, "closed")); - System.out.println(fixedDepositStatusHashMap); - } - - public static void verifyFixedDepositAccountIsNotActive(final HashMap fixedDepositStatusHashMap) { - System.out.println("------------------ VERIFYING FIXED DEPOSIT APPLICATION IS INACTIVE --------------------"); - Assert.assertFalse(getStatus(fixedDepositStatusHashMap, "active")); - System.out.println(fixedDepositStatusHashMap); - } - - public static HashMap getStatusOfFixedDepositAccount(final RequestSpecification requestSpec, final ResponseSpecification responseSpec, - final String fixedDepositAccountID) { - final String GET_STATUS_OF_FIXED_DEPOSIT_ACCOUNT_URL = FIXED_DEPOSIT_ACCOUNT_URL + "/" + fixedDepositAccountID + "?" - + Utils.TENANT_IDENTIFIER; - return Utils.performServerGet(requestSpec, responseSpec, GET_STATUS_OF_FIXED_DEPOSIT_ACCOUNT_URL, "status"); - } - - public static void verifyFixedDepositAccountIsPrematureClosed(HashMap fixedDepositStatusHashMap) { - System.out.println("--------------------- VERIFYING FIXED DEPOSIT APPLICATION IS CLOSED ---------------------"); - assertTrue("ERROR IN PREMATURELY CLOSING THE FIXED DEPOSIT ACCOUNT", getStatus(fixedDepositStatusHashMap, "prematureClosed")); - System.out.println(fixedDepositStatusHashMap); - } - - private static boolean getStatus(final HashMap fixedDepositStatusMap, final String fixedDepositStatusString) { - return (Boolean) fixedDepositStatusMap.get(fixedDepositStatusString); - } -} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-fineract/blob/66cee785/fineract-provider/src/integrationTest/java/org/apache/fineract/integrationtests/common/fixeddeposit/FixedDepositProductHelper.java ---------------------------------------------------------------------- diff --git a/fineract-provider/src/integrationTest/java/org/apache/fineract/integrationtests/common/fixeddeposit/FixedDepositProductHelper.java b/fineract-provider/src/integrationTest/java/org/apache/fineract/integrationtests/common/fixeddeposit/FixedDepositProductHelper.java deleted file mode 100644 index 2703340..0000000 --- a/fineract-provider/src/integrationTest/java/org/apache/fineract/integrationtests/common/fixeddeposit/FixedDepositProductHelper.java +++ /dev/null @@ -1,254 +0,0 @@ -/** - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.fineract.integrationtests.common.fixeddeposit; - -import static org.junit.Assert.assertEquals; - -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -import org.apache.fineract.integrationtests.common.CommonConstants; -import org.apache.fineract.integrationtests.common.Utils; -import org.apache.fineract.integrationtests.common.accounting.Account; -import org.apache.fineract.integrationtests.common.accounting.Account.AccountType; -import org.apache.fineract.integrationtests.common.savings.SavingsProductHelper; - -import com.google.gson.Gson; -import com.jayway.restassured.specification.RequestSpecification; -import com.jayway.restassured.specification.ResponseSpecification; - -@SuppressWarnings({ "unused", "rawtypes" }) -public class FixedDepositProductHelper { - - private final RequestSpecification requestSpec; - private final ResponseSpecification responseSpec; - - public FixedDepositProductHelper(final RequestSpecification requestSpec, final ResponseSpecification responseSpec) { - this.requestSpec = requestSpec; - this.responseSpec = responseSpec; - } - - private static final String FIXED_DEPOSIT_PRODUCT_URL = "/fineract-provider/api/v1/fixeddepositproducts"; - private static final String INTEREST_CHART_URL = "/fineract-provider/api/v1/interestratecharts"; - private static final String CREATE_FIXED_DEPOSIT_PRODUCT_URL = FIXED_DEPOSIT_PRODUCT_URL + "?" + Utils.TENANT_IDENTIFIER; - - private static final String LOCALE = "en_GB"; - private static final String DIGITS_AFTER_DECIMAL = "4"; - private static final String IN_MULTIPLES_OF = "100"; - private static final String USD = "USD"; - private static final String DAYS = "0"; - private static final String WEEKS = "1"; - private static final String MONTHS = "2"; - private static final String YEARS = "3"; - private static final String DAILY = "1"; - private static final String MONTHLY = "4"; - private static final String QUARTERLY = "5"; - private static final String BI_ANNUALLY = "6"; - private static final String ANNUALLY = "7"; - private static final String INTEREST_CALCULATION_USING_DAILY_BALANCE = "1"; - private static final String INTEREST_CALCULATION_USING_AVERAGE_DAILY_BALANCE = "2"; - private static final String DAYS_360 = "360"; - private static final String DAYS_365 = "365"; - private static final String NONE = "1"; - private static final String CASH_BASED = "2"; - private static final String ACCRUAL_PERIODIC = "3"; - private static final String ACCRUAL_UPFRONT = "4"; - private static final String WHOLE_TERM = "1"; - private static final String TILL_PREMATURE_WITHDRAWAL = "2"; - - private String name = Utils.randomNameGenerator("FIXED_DEPOSIT_PRODUCT_", 6); - private String shortName = Utils.randomNameGenerator("", 4); - private String description = Utils.randomNameGenerator("", 20); - private String interestCompoundingPeriodType = MONTHLY; - private String interestPostingPeriodType = MONTHLY; - private String interestCalculationType = INTEREST_CALCULATION_USING_DAILY_BALANCE; - private String accountingRule = NONE; - private String lockinPeriodFrequency = "1"; - private String lockingPeriodFrequencyType = MONTHS; - private String minDepositTerm = "6"; - private String minDepositTermTypeId = MONTHS; - private String maxDepositTerm = "10"; - private String maxDepositTermTypeId = YEARS; - private String inMultiplesOfDepositTerm = "2"; - private final String depositAmount = "100000"; - private String inMultiplesOfDepositTermTypeId = MONTHS; - private String preClosurePenalInterest = "2"; - private String preClosurePenalInterestOnTypeId = WHOLE_TERM; - private final boolean preClosurePenalApplicable = true; - private final String currencyCode = USD; - private final String interestCalculationDaysInYearType = DAYS_365; - private Account[] accountList = null; - - public String build(final String validFrom, final String validTo) { - final HashMap<String, Object> map = new HashMap<>(); - - List<HashMap<String, String>> chartSlabs = new ArrayList<HashMap<String, String>>(); - HashMap<String, String> chartSlabsMap1 = new HashMap<>(); - chartSlabsMap1.put("description", "First"); - chartSlabsMap1.put("periodType", MONTHS); - chartSlabsMap1.put("fromPeriod", "1"); - chartSlabsMap1.put("toPeriod", "6"); - chartSlabsMap1.put("annualInterestRate", "5"); - chartSlabsMap1.put("locale", LOCALE); - chartSlabs.add(0, chartSlabsMap1); - - HashMap<String, String> chartSlabsMap2 = new HashMap<>(); - chartSlabsMap2.put("description", "Second"); - chartSlabsMap2.put("periodType", MONTHS); - chartSlabsMap2.put("fromPeriod", "7"); - chartSlabsMap2.put("toPeriod", "12"); - chartSlabsMap2.put("annualInterestRate", "6"); - chartSlabsMap2.put("locale", LOCALE); - chartSlabs.add(1, chartSlabsMap2); - - HashMap<String, String> chartSlabsMap3 = new HashMap<>(); - chartSlabsMap3.put("description", "Third"); - chartSlabsMap3.put("periodType", MONTHS); - chartSlabsMap3.put("fromPeriod", "13"); - chartSlabsMap3.put("toPeriod", "18"); - chartSlabsMap3.put("annualInterestRate", "7"); - chartSlabsMap3.put("locale", LOCALE); - chartSlabs.add(2, chartSlabsMap3); - - HashMap<String, String> chartSlabsMap4 = new HashMap<>(); - chartSlabsMap4.put("description", "Fourth"); - chartSlabsMap4.put("periodType", MONTHS); - chartSlabsMap4.put("fromPeriod", "19"); - chartSlabsMap4.put("toPeriod", "24"); - chartSlabsMap4.put("annualInterestRate", "8"); - chartSlabsMap4.put("locale", LOCALE); - chartSlabs.add(3, chartSlabsMap4); - - List<HashMap<String, Object>> charts = new ArrayList<HashMap<String, Object>>(); - HashMap<String, Object> chartsMap = new HashMap<>(); - chartsMap.put("fromDate", validFrom); - chartsMap.put("endDate", validTo); - chartsMap.put("dateFormat", "dd MMMM yyyy"); - chartsMap.put("locale", LOCALE); - chartsMap.put("chartSlabs", chartSlabs); - charts.add(chartsMap); - - map.put("charts", charts); - map.put("name", this.name); - map.put("shortName", this.shortName); - map.put("description", this.description); - map.put("currencyCode", this.currencyCode); - map.put("interestCalculationDaysInYearType", this.interestCalculationDaysInYearType); - map.put("locale", LOCALE); - map.put("digitsAfterDecimal", DIGITS_AFTER_DECIMAL); - map.put("inMultiplesOf", IN_MULTIPLES_OF); - map.put("interestCalculationType", this.interestCalculationType); - map.put("interestCompoundingPeriodType", this.interestCompoundingPeriodType); - map.put("interestPostingPeriodType", this.interestPostingPeriodType); - map.put("accountingRule", this.accountingRule); - map.put("lockinPeriodFrequency", this.lockinPeriodFrequency); - map.put("lockinPeriodFrequencyType", this.lockingPeriodFrequencyType); - map.put("preClosurePenalApplicable", "true"); - map.put("minDepositTermTypeId", this.minDepositTermTypeId); - map.put("minDepositTerm", this.minDepositTerm); - map.put("maxDepositTermTypeId", this.maxDepositTermTypeId); - map.put("maxDepositTerm", this.maxDepositTerm); - map.put("depositAmount", this.depositAmount); - map.put("preClosurePenalApplicable", this.preClosurePenalApplicable); - map.put("inMultiplesOfDepositTerm", this.inMultiplesOfDepositTerm); - map.put("inMultiplesOfDepositTermTypeId", this.inMultiplesOfDepositTermTypeId); - map.put("preClosurePenalInterest", this.preClosurePenalInterest); - map.put("preClosurePenalInterestOnTypeId", this.preClosurePenalInterestOnTypeId); - - if (this.accountingRule.equals(CASH_BASED)) { - map.putAll(getAccountMappingForCashBased()); - } - - String FixedDepositProductCreateJson = new Gson().toJson(map); - System.out.println(FixedDepositProductCreateJson); - return FixedDepositProductCreateJson; - } - - public FixedDepositProductHelper withAccountingRuleAsNone() { - this.accountingRule = NONE; - return this; - } - - public FixedDepositProductHelper withAccountingRuleAsCashBased(final Account[] account_list) { - this.accountingRule = CASH_BASED; - this.accountList = account_list; - return this; - } - - private Map<String, String> getAccountMappingForCashBased() { - final Map<String, String> map = new HashMap<>(); - if (accountList != null) { - for (int i = 0; i < this.accountList.length; i++) { - if (this.accountList[i].getAccountType().equals(Account.AccountType.ASSET)) { - final String ID = this.accountList[i].getAccountID().toString(); - map.put("savingsReferenceAccountId", ID); - } - if (this.accountList[i].getAccountType().equals(Account.AccountType.LIABILITY)) { - final String ID = this.accountList[i].getAccountID().toString(); - map.put("savingsControlAccountId", ID); - map.put("transfersInSuspenseAccountId", ID); - } - if (this.accountList[i].getAccountType().equals(Account.AccountType.EXPENSE)) { - final String ID = this.accountList[i].getAccountID().toString(); - map.put("interestOnSavingsAccountId", ID); - } - if (this.accountList[i].getAccountType().equals(Account.AccountType.INCOME)) { - final String ID = this.accountList[i].getAccountID().toString(); - map.put("incomeFromFeeAccountId", ID); - map.put("incomeFromPenaltyAccountId", ID); - } - } - } - return map; - } - - public static Integer createFixedDepositProduct(final String fixedDepositProductCreateJson, final RequestSpecification requestSpec, - final ResponseSpecification responseSpec) { - System.out.println("--------------------- CREATING FIXED DEPOSIT PRODUCT ------------------------"); - return Utils.performServerPost(requestSpec, responseSpec, CREATE_FIXED_DEPOSIT_PRODUCT_URL, fixedDepositProductCreateJson, - CommonConstants.RESPONSE_RESOURCE_ID); - } - - public static ArrayList retrieveAllFixedDepositProducts(final RequestSpecification requestSpec, final ResponseSpecification responseSpec) { - System.out.println("-------------------- RETRIEVING ALL FIXED DEPOSIT PRODUCTS ---------------------"); - final ArrayList response = Utils.performServerGet(requestSpec, responseSpec, FIXED_DEPOSIT_PRODUCT_URL + "?" - + Utils.TENANT_IDENTIFIER, ""); - return response; - } - - public static HashMap retrieveFixedDepositProductById(final RequestSpecification requestSpec, final ResponseSpecification responseSpec, - final String productId) { - System.out.println("------------------------ RETRIEVING FIXED DEPOSIT PRODUCT BY ID ------------------------"); - final String GET_FD_PRODUCT_BY_ID_URL = FIXED_DEPOSIT_PRODUCT_URL + "/" + productId + "?" + Utils.TENANT_IDENTIFIER; - final HashMap response = Utils.performServerGet(requestSpec, responseSpec, GET_FD_PRODUCT_BY_ID_URL, ""); - return response; - } - - public static ArrayList getInterestRateChartSlabsByProductId(final RequestSpecification requestSpec, - final ResponseSpecification responseSpec, final Integer productId) { - System.out.println("-------------------- RETRIEVE INTEREST CHART BY PRODUCT ID ---------------------"); - final ArrayList response = Utils.performServerGet(requestSpec, responseSpec, INTEREST_CHART_URL + "?productId=" + productId, - "chartSlabs"); - return response; - } - -} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-fineract/blob/66cee785/fineract-provider/src/integrationTest/java/org/apache/fineract/integrationtests/common/funds/FundsHelper.java ---------------------------------------------------------------------- diff --git a/fineract-provider/src/integrationTest/java/org/apache/fineract/integrationtests/common/funds/FundsHelper.java b/fineract-provider/src/integrationTest/java/org/apache/fineract/integrationtests/common/funds/FundsHelper.java deleted file mode 100644 index eed6ae5..0000000 --- a/fineract-provider/src/integrationTest/java/org/apache/fineract/integrationtests/common/funds/FundsHelper.java +++ /dev/null @@ -1,111 +0,0 @@ -/** - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.fineract.integrationtests.common.funds; - -import com.google.gson.Gson; - -public class FundsHelper { - - public static class Builder { - - private String name; - private String externalId; - - private Builder(final String name) { - this.name = name; - } - - public Builder externalId(final String externalId) { - this.externalId = externalId; - return this; - } - - public FundsHelper build() { - return new FundsHelper(this.name, this.externalId); - } - - } - - private String name; - private String externalId; - private Long resourceId; - - FundsHelper() { - super(); - } - - private FundsHelper(final String name, - final String externalId) { - super(); - this.name = name; - this.externalId = externalId; - } - - public String getName() { - return this.name; - } - - public String getExternalId() { - return this.externalId; - } - - public Long getResourceId() { - return this.resourceId; - } - - public String toJSON() { - return new Gson().toJson(this); - } - - public static FundsHelper fromJSON(final String jsonData) { - return new Gson().fromJson(jsonData, FundsHelper.class); - } - - public static Builder create(final String name) { - return new Builder(name); - } - - @Override - public int hashCode() { - if (this.name != null) { - return this.name.hashCode(); - } - return super.hashCode(); - } - - @Override - public boolean equals(Object o) { - if (o == this) { - return true; - } - - if (!(o instanceof FundsHelper)) { - return false; - } - - FundsHelper fh = (FundsHelper)o; - - if (this.name.equals(fh.name)) { - return true; - } - - return false; - } - -} http://git-wip-us.apache.org/repos/asf/incubator-fineract/blob/66cee785/fineract-provider/src/integrationTest/java/org/apache/fineract/integrationtests/common/funds/FundsResourceHandler.java ---------------------------------------------------------------------- diff --git a/fineract-provider/src/integrationTest/java/org/apache/fineract/integrationtests/common/funds/FundsResourceHandler.java b/fineract-provider/src/integrationTest/java/org/apache/fineract/integrationtests/common/funds/FundsResourceHandler.java deleted file mode 100644 index 5d605fc..0000000 --- a/fineract-provider/src/integrationTest/java/org/apache/fineract/integrationtests/common/funds/FundsResourceHandler.java +++ /dev/null @@ -1,72 +0,0 @@ -/** - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.fineract.integrationtests.common.funds; - -import com.google.common.reflect.TypeToken; -import com.google.gson.Gson; -import com.jayway.restassured.specification.RequestSpecification; -import com.jayway.restassured.specification.ResponseSpecification; - -import org.apache.fineract.integrationtests.common.Utils; - -import java.util.HashMap; -import java.util.List; - -public class FundsResourceHandler { - - private static final String FUNDS_URL = "/fineract-provider/api/v1/funds"; - private static final String CREATE_FUNDS_URL = FUNDS_URL + "?" + Utils.TENANT_IDENTIFIER; - - public static Integer createFund(final String fundJSON, - final RequestSpecification requestSpec, - final ResponseSpecification responseSpec) { - return Utils.performServerPost(requestSpec, responseSpec, CREATE_FUNDS_URL, fundJSON, "resourceId"); - } - - public static List<FundsHelper> retrieveAllFunds(final RequestSpecification requestSpec, - final ResponseSpecification responseSpec) { - final String URL = FUNDS_URL + "?" + Utils.TENANT_IDENTIFIER; - List<HashMap<String, Object>> list = Utils.performServerGet(requestSpec, responseSpec, URL, ""); - final String jsonData = new Gson().toJson(list); - return new Gson().fromJson(jsonData, new TypeToken<List<FundsHelper>>(){}.getType()); - } - - public static String retrieveFund(final Long fundID, - final RequestSpecification requestSpec, - final ResponseSpecification responseSpec) { - final String URL = FUNDS_URL + "/" + fundID + "?" + Utils.TENANT_IDENTIFIER; - final HashMap response = Utils.performServerGet(requestSpec, responseSpec, URL, ""); - return new Gson().toJson(response); - } - - public static FundsHelper updateFund(final Long fundID, - final String newName, - final String newExternalId, - final RequestSpecification requestSpec, - final ResponseSpecification responseSpec) { - FundsHelper fh = FundsHelper.create(newName).externalId(newExternalId).build(); - String updateJSON = new Gson().toJson(fh); - - final String URL = FUNDS_URL + "/" + fundID + "?" + Utils.TENANT_IDENTIFIER; - final HashMap<String, String> response = Utils.performServerPut(requestSpec, responseSpec, URL, updateJSON, "changes"); - final String jsonData = new Gson().toJson(response); - return new Gson().fromJson(jsonData, FundsHelper.class); - } - -}
