Fix for reading multirow datatable entry reads non-belonging entry
This commit is contained in:
committed by
Arnold Gálovics
parent
8e37f93baf
commit
2b122a17ea
+12
-5
@@ -52,11 +52,11 @@ public class DatatableHelper {
|
||||
}
|
||||
|
||||
public Integer createDatatableEntry(final String apptableName, final String datatableName, final Integer apptableId,
|
||||
final boolean genericResultSet, final String dateFormat) {
|
||||
final boolean genericResultSet, final String dateFormat, final String jsonAttributeToGetBack) {
|
||||
return Utils.performServerPost(
|
||||
this.requestSpec, this.responseSpec, DATATABLE_URL + "/" + datatableName + "/" + apptableId + "?genericResultSet="
|
||||
+ Boolean.toString(genericResultSet) + "&" + Utils.TENANT_IDENTIFIER,
|
||||
getTestDatatableEntryAsJSON(dateFormat), "resourceId");
|
||||
getTestDatatableEntryAsJSON(dateFormat), jsonAttributeToGetBack);
|
||||
}
|
||||
|
||||
public String readDatatableEntry(final String datatableName, final Integer resourceId, final boolean genericResultset) {
|
||||
@@ -65,9 +65,16 @@ public class DatatableHelper {
|
||||
}
|
||||
|
||||
public List<String> readDatatableEntry(final String datatableName, final Integer resourceId, final boolean genericResultset,
|
||||
final String jsonAttributeToGetBack) {
|
||||
return Utils.performServerGetList(this.requestSpec, this.responseSpec, DATATABLE_URL + "/" + datatableName + "/" + resourceId
|
||||
+ "?genericResultSet=" + String.valueOf(genericResultset) + "&" + Utils.TENANT_IDENTIFIER, jsonAttributeToGetBack);
|
||||
final Integer datatableResourceId, final String jsonAttributeToGetBack) {
|
||||
if (datatableResourceId == null) {
|
||||
return Utils.performServerGetList(this.requestSpec, this.responseSpec, DATATABLE_URL + "/" + datatableName + "/" + resourceId
|
||||
+ "?genericResultSet=" + String.valueOf(genericResultset) + "&" + Utils.TENANT_IDENTIFIER, jsonAttributeToGetBack);
|
||||
} else {
|
||||
return Utils.performServerGetList(
|
||||
this.requestSpec, this.responseSpec, DATATABLE_URL + "/" + datatableName + "/" + resourceId + "/" + datatableResourceId
|
||||
+ "?genericResultSet=" + String.valueOf(genericResultset) + "&" + Utils.TENANT_IDENTIFIER,
|
||||
jsonAttributeToGetBack);
|
||||
}
|
||||
}
|
||||
|
||||
public Date readDatatableEntry(final String datatableName, final Integer resourceId, final boolean genericResultset, final int position,
|
||||
|
||||
+48
-2
@@ -63,11 +63,11 @@ public class DatatableIntegrationTest {
|
||||
// creating new client datatable entry
|
||||
final boolean genericResultSet = true;
|
||||
Integer datatableResourceID = this.datatableHelper.createDatatableEntry(CLIENT_APP_TABLE_NAME, datatableName, clientID,
|
||||
genericResultSet, "yyyy-MM-dd");
|
||||
genericResultSet, "yyyy-MM-dd", "resourceId");
|
||||
assertNotNull(datatableResourceID, "ERROR IN CREATING THE ENTITY DATATABLE RECORD");
|
||||
|
||||
// Read the Datatable entry generated with genericResultSet in true (default)
|
||||
final List<String> items = this.datatableHelper.readDatatableEntry(datatableName, clientID, genericResultSet, "data");
|
||||
final List<String> items = this.datatableHelper.readDatatableEntry(datatableName, clientID, genericResultSet, null, "data");
|
||||
assertEquals(1, items.size());
|
||||
|
||||
// Read the Datatable entry generated with genericResultSet in false
|
||||
@@ -84,4 +84,50 @@ public class DatatableIntegrationTest {
|
||||
assertEquals(datatableName, deletedDataTableName, "ERROR IN DELETING THE DATATABLE");
|
||||
}
|
||||
|
||||
@Test
|
||||
public void validateReadDatatableMultirow() {
|
||||
// creating multirow datatable for client entity
|
||||
String datatableName = this.datatableHelper.createDatatable(CLIENT_APP_TABLE_NAME, true);
|
||||
DatatableHelper.verifyDatatableCreatedOnServer(this.requestSpec, this.responseSpec, datatableName);
|
||||
|
||||
// creating first client with datatables
|
||||
final Integer clientIdA = ClientHelper.createClientAsPerson(requestSpec, responseSpec);
|
||||
|
||||
// creating second client with datatables
|
||||
final Integer clientIdB = ClientHelper.createClientAsPerson(requestSpec, responseSpec);
|
||||
|
||||
// creating new client datatable entry for first client
|
||||
final boolean genericResultSet = true;
|
||||
final Integer datatableResourceIdA = this.datatableHelper.createDatatableEntry(CLIENT_APP_TABLE_NAME, datatableName, clientIdA,
|
||||
genericResultSet, "yyyy-MM-dd", "resourceId");
|
||||
assertNotNull(datatableResourceIdA, "ERROR IN CREATING THE ENTITY DATATABLE RECORD");
|
||||
|
||||
// creating new client datatable entry for second client
|
||||
final Integer datatableResourceIdB = this.datatableHelper.createDatatableEntry(CLIENT_APP_TABLE_NAME, datatableName, clientIdB,
|
||||
genericResultSet, "yyyy-MM-dd", "resourceId");
|
||||
assertNotNull(datatableResourceIdB, "ERROR IN CREATING THE ENTITY DATATABLE RECORD");
|
||||
|
||||
// Read the Datatable entry generated for first client
|
||||
List<String> items;
|
||||
items = this.datatableHelper.readDatatableEntry(datatableName, clientIdA, genericResultSet, datatableResourceIdA, "data");
|
||||
assertEquals(1, items.size());
|
||||
|
||||
// Read the Datatable entry generated for second client
|
||||
items = this.datatableHelper.readDatatableEntry(datatableName, clientIdB, genericResultSet, datatableResourceIdB, "data");
|
||||
assertEquals(1, items.size());
|
||||
|
||||
// Read the Datatable entry generated for first client and second client's record Id
|
||||
items = this.datatableHelper.readDatatableEntry(datatableName, clientIdA, genericResultSet, datatableResourceIdB, "data");
|
||||
assertEquals(0, items.size());
|
||||
|
||||
// deleting datatable entries
|
||||
Integer appTableIdA = this.datatableHelper.deleteDatatableEntries(datatableName, clientIdA, "clientId");
|
||||
assertEquals(clientIdA, appTableIdA, "ERROR IN DELETING THE DATATABLE ENTRIES");
|
||||
Integer appTableIdB = this.datatableHelper.deleteDatatableEntries(datatableName, clientIdB, "clientId");
|
||||
assertEquals(clientIdB, appTableIdB, "ERROR IN DELETING THE DATATABLE ENTRIES");
|
||||
|
||||
// deleting the datatable
|
||||
String deletedDataTableName = this.datatableHelper.deleteDatatable(datatableName);
|
||||
assertEquals(datatableName, deletedDataTableName, "ERROR IN DELETING THE DATATABLE");
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user