Details
-
Bug Report
-
Resolution: Fixed
-
L3 - Default
-
7.4.0
-
None
Description
Searching for a test case failure in ManagementServiceTest I saw, that there are a lot of errors and exceptions reported in org.camunda.bpm.engine.test.api.mgmt.ManagementServiceTest-output.txt, even when using h2 as database and not IBM Informix.
Despite all these problems the testcase does not fail using h2.
To overcome the problem on IBM Informix I suggest making this change:
diff --git a/engine/src/test/java/org/camunda/bpm/engine/test/api/mgmt/ManagementServiceTest.java b/engine/src/test/java/org/camunda/bpm/engine/test/api/mgmt/ManagementServiceTest.java index 3b6dbcf..9c61a6b 100644 --- a/engine/src/test/java/org/camunda/bpm/engine/test/api/mgmt/ManagementServiceTest.java +++ b/engine/src/test/java/org/camunda/bpm/engine/test/api/mgmt/ManagementServiceTest.java @@ -739,13 +739,12 @@ public class ManagementServiceTest extends PluggableProcessEngineTestCase { assertEquals(expectedTaskNames.length, rowData.size()); String columnKey = "NAME_"; - // mybatis will return the correct case for postgres table columns from version 3.0.6 on - if (processEngineConfiguration.getDatabaseType().equals("postgres")) { - columnKey = "name_"; - } - for (int i=0; i < expectedTaskNames.length; i++) { - assertEquals(expectedTaskNames[i], rowData.get(i).get(columnKey)); + Object o = rowData.get(i).get(columnKey); + if ( o == null ) { + o = rowData.get(i).get(columnKey.toLowerCase()); + } + assertEquals(expectedTaskNames[i], o); } }
IBM Informix also delivers the column names in lower case as postgres it obviously does. So my proposal is, to lookup the column content first with the upper case column name and, if not successful, try again with lower case name.