adamsaghy commented on code in PR #5946:
URL: https://github.com/apache/fineract/pull/5946#discussion_r3374433614


##########
integration-tests/src/test/java/org/apache/fineract/integrationtests/common/provisioning/ProvisioningHelper.java:
##########
@@ -18,111 +18,73 @@
  */
 package org.apache.fineract.integrationtests.common.provisioning;
 
-import com.google.gson.Gson;
-import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
 import java.security.SecureRandom;
 import java.text.DateFormat;
 import java.text.SimpleDateFormat;
 import java.util.ArrayList;
 import java.util.Date;
 import java.util.HashMap;
+import java.util.List;
 import java.util.Locale;
 import java.util.Map;
+import org.apache.fineract.client.models.ProvisionEntryRequest;
+import org.apache.fineract.client.models.ProvisioningCategoryData;
 import org.apache.fineract.integrationtests.common.Utils;
 import org.apache.fineract.integrationtests.common.accounting.Account;
 
 public final class ProvisioningHelper {
 
     private static final SecureRandom rand = new SecureRandom();
 
-    private ProvisioningHelper() {
+    private ProvisioningHelper() {}
 
-    }
-
-    // TODO: Rewrite to use fineract-client instead!
-    // Example: 
org.apache.fineract.integrationtests.common.loans.LoanTransactionHelper.disburseLoan(java.lang.Long,
-    // org.apache.fineract.client.models.PostLoansLoanIdRequest)
-    @Deprecated(forRemoval = true)
-    @SuppressFBWarnings(value = {
-            "DMI_RANDOM_USED_ONLY_ONCE" }, justification = "False positive for 
random object created and used only once")
-    public static Map createProvisioingCriteriaJson(ArrayList<Integer> 
loanProducts, ArrayList categories, Account liability,
-            Account expense) {
-        final HashMap<String, Object> map = new HashMap<>();
-        map.put("loanProducts", addLoanProducts(loanProducts));
-        map.put("definitions", addProvisioningCategories(categories, 
liability, expense));
+    public static Map<String, Object> 
createProvisioningCriteriaJson(List<Integer> loanProducts, 
List<ProvisioningCategoryData> categories,
+            Account liability, Account expense) {
         DateFormat simple = new SimpleDateFormat("dd MMMM yyyy", Locale.US);
         String formattedString = 
simple.format(Date.from(Utils.getLocalDateOfTenant().atStartOfDay(Utils.getZoneIdOfTenant()).toInstant()));
-
         String criteriaName = "General Provisioning Criteria" + 
formattedString + rand.nextLong();
+        final Map<String, Object> map = new HashMap<>();
         map.put("criteriaName", criteriaName);
+        map.put("loanProducts", addLoanProducts(loanProducts));
+        map.put("definitions", addProvisioningCategories(categories, 
liability, expense));
         map.put("locale", "en");
         return map;
     }
 
-    // TODO: Rewrite to use fineract-client instead!
-    // Example: 
org.apache.fineract.integrationtests.common.loans.LoanTransactionHelper.disburseLoan(java.lang.Long,
-    // org.apache.fineract.client.models.PostLoansLoanIdRequest)
-    @Deprecated(forRemoval = true)
-    public static String createProvisioningEntryJson() {
-        final HashMap<String, Object> map = new HashMap<>();
-        map.put("createjournalentries", Boolean.FALSE);
-        map.put("locale", "en");
-        map.put("dateFormat", "dd MMMM yyyy");
-        DateFormat simple = new SimpleDateFormat("dd MMMM yyyy", Locale.US);
-        map.put("date", 
simple.format(Date.from(Utils.getLocalDateOfTenant().atStartOfDay(Utils.getZoneIdOfTenant()).toInstant())));
-        String provisioningEntryCreateJson = new Gson().toJson(map);
-        return provisioningEntryCreateJson;
+    public static ProvisionEntryRequest createProvisioningEntryRequest() {
+        return createProvisioningEntryRequest(false);
     }
 
-    // TODO: Rewrite to use fineract-client instead!
-    // Example: 
org.apache.fineract.integrationtests.common.loans.LoanTransactionHelper.disburseLoan(java.lang.Long,
-    // org.apache.fineract.client.models.PostLoansLoanIdRequest)
-    @Deprecated(forRemoval = true)
-    public static String createProvisioningEntryJsonWithJournalsEnabled() {
-        final HashMap<String, Object> map = new HashMap<>();
-        map.put("createjournalentries", Boolean.TRUE);
-        map.put("locale", "en");
-        map.put("dateFormat", "dd MMMM yyyy");
+    public static ProvisionEntryRequest 
createProvisioningEntryRequestWithJournalsEnabled() {
+        return createProvisioningEntryRequest(true);
+    }
+
+    private static ProvisionEntryRequest 
createProvisioningEntryRequest(boolean createJournalEntries) {
         DateFormat simple = new SimpleDateFormat("dd MMMM yyyy", Locale.US);
-        map.put("date", 
simple.format(Date.from(Utils.getLocalDateOfTenant().atStartOfDay(Utils.getZoneIdOfTenant()).toInstant())));
-        String provisioningEntryCreateJson = new Gson().toJson(map);
-        return provisioningEntryCreateJson;
+        return new 
ProvisionEntryRequest().createjournalentries(createJournalEntries).locale("en").dateFormat("dd
 MMMM yyyy")
+                
.date(simple.format(Date.from(Utils.getLocalDateOfTenant().atStartOfDay(Utils.getZoneIdOfTenant()).toInstant())));
     }
 
-    // TODO: Rewrite to use fineract-client instead!
-    // Example: 
org.apache.fineract.integrationtests.common.loans.LoanTransactionHelper.disburseLoan(java.lang.Long,
-    // org.apache.fineract.client.models.PostLoansLoanIdRequest)
-    @Deprecated(forRemoval = true)
-    private static ArrayList<HashMap<String, Integer>> 
addLoanProducts(ArrayList<Integer> loanProducts) {
-        ArrayList<HashMap<String, Integer>> list = new ArrayList<>();
-        for (int i = 0; i < loanProducts.size(); i++) {
+    private static List<HashMap<String, Integer>> 
addLoanProducts(List<Integer> loanProducts) {

Review Comment:
   what is this for?



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to