This is an automated email from the ASF dual-hosted git repository.

vorburger pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/fineract.git


The following commit(s) were added to refs/heads/develop by this push:
     new 4465003  FINERACT-1047 Added integration test for limit param (audit 
trails)
4465003 is described below

commit 44650034b16f6fbb88a4ff40d7fd6c48fe69b08d
Author: Manthan Surkar <[email protected]>
AuthorDate: Thu Jul 9 17:16:21 2020 +0530

    FINERACT-1047 Added integration test for limit param (audit trails)
---
 .../integrationtests/AuditIntegrationTest.java     | 26 ++++++++++++++++++++++
 .../integrationtests/common/AuditHelper.java       | 14 ++++++++++++
 2 files changed, 40 insertions(+)

diff --git 
a/fineract-provider/src/integrationTest/java/org/apache/fineract/integrationtests/AuditIntegrationTest.java
 
b/fineract-provider/src/integrationTest/java/org/apache/fineract/integrationtests/AuditIntegrationTest.java
index b9570b5..e69b2e9 100644
--- 
a/fineract-provider/src/integrationTest/java/org/apache/fineract/integrationtests/AuditIntegrationTest.java
+++ 
b/fineract-provider/src/integrationTest/java/org/apache/fineract/integrationtests/AuditIntegrationTest.java
@@ -25,6 +25,7 @@ import io.restassured.specification.RequestSpecification;
 import io.restassured.specification.ResponseSpecification;
 import java.util.HashMap;
 import java.util.List;
+import java.util.Random;
 import org.apache.fineract.integrationtests.common.AuditHelper;
 import org.apache.fineract.integrationtests.common.ClientHelper;
 import org.apache.fineract.integrationtests.common.OfficeHelper;
@@ -102,4 +103,29 @@ public class AuditIntegrationTest {
         auditHelper.verifyOneAuditOnly(auditsRecieved, officeId, "CREATE", 
"OFFICE");
     }
 
+    /**
+     *
+     * Here we test that audit request with limit x only returns x entries
+     */
+    @Test
+    public void checkAuditsWithLimit() {
+        // Create client
+        final Integer clientId = ClientHelper.createClient(this.requestSpec, 
this.responseSpec);
+
+        // The following loop would ensure database have atleast 8 audits.
+        for (int i = 0; i < 4; i++) {
+            // Close client
+            this.clientHelper.closeClient(clientId);
+            // Activate client
+            this.clientHelper.reactivateClient(clientId);
+        }
+
+        Random rand = new Random();
+        for (int i = 0; i < 3; i++) {
+            // limit contains a number between 1-8
+            int limit = rand.nextInt(7) + 1;
+            auditHelper.verifyLimitParameterfor(limit);
+        }
+    }
+
 }
diff --git 
a/fineract-provider/src/integrationTest/java/org/apache/fineract/integrationtests/common/AuditHelper.java
 
b/fineract-provider/src/integrationTest/java/org/apache/fineract/integrationtests/common/AuditHelper.java
index cc995c6..0415bc1 100644
--- 
a/fineract-provider/src/integrationTest/java/org/apache/fineract/integrationtests/common/AuditHelper.java
+++ 
b/fineract-provider/src/integrationTest/java/org/apache/fineract/integrationtests/common/AuditHelper.java
@@ -25,6 +25,7 @@ import io.restassured.specification.ResponseSpecification;
 import java.util.Collections;
 import java.util.Comparator;
 import java.util.HashMap;
+import java.util.LinkedHashMap;
 import java.util.List;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -55,6 +56,15 @@ public class AuditHelper {
         return responseAudits;
     }
 
+    public List getAuditDetails(final int limit) {
+
+        final String AUDIT_URL = 
"/fineract-provider/api/v1/audits?paged=true&limit=" + Integer.toString(limit) 
+ "&"
+                + Utils.TENANT_IDENTIFIER;
+        LinkedHashMap responseAudits = Utils.performServerGet(requestSpec, 
responseSpec, AUDIT_URL, "");
+        return (List) responseAudits.get("pageItems");
+
+    }
+
     /**
      * Some audit actions can only be done once Eg: Creation of a client with 
id 123, hence we verify number of audits
      * For such operations is "equal" to 1 always
@@ -86,4 +96,8 @@ public class AuditHelper {
         assertEquals(expected, actual, "Error in creating audit!");
     }
 
+    public void verifyLimitParameterfor(final int limit) {
+        assertEquals(limit, getAuditDetails(limit).size(), "Incorrect number 
of audits recieved for limit: " + Integer.toString(limit));
+    }
+
 }

Reply via email to