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));
+ }
+
}