diff --git a/app/server/appsmith-interfaces/src/main/java/com/appsmith/external/services/FilterDataService.java b/app/server/appsmith-interfaces/src/main/java/com/appsmith/external/services/FilterDataService.java index 498e33a074..ffc99f3323 100644 --- a/app/server/appsmith-interfaces/src/main/java/com/appsmith/external/services/FilterDataService.java +++ b/app/server/appsmith-interfaces/src/main/java/com/appsmith/external/services/FilterDataService.java @@ -322,6 +322,7 @@ public class FilterDataService { private void executeDbQuery(String query) { Connection conn = checkAndGetConnection(); + log.debug("{} : Executing Query on H2 : {}", Thread.currentThread().getName(), query); try { conn.createStatement().execute(query); @@ -537,11 +538,9 @@ public class FilterDataService { preparedStatement.setBoolean(index, Boolean.parseBoolean(value)); break; } - case STRING: { - preparedStatement.setString(index, value); - break; - } + case STRING: default: + preparedStatement.setString(index, value); break; } diff --git a/app/server/appsmith-interfaces/src/test/java/com/appsmith/external/services/FilterDataServiceTest.java b/app/server/appsmith-interfaces/src/test/java/com/appsmith/external/services/FilterDataServiceTest.java index dabbf39554..2d7b433c97 100644 --- a/app/server/appsmith-interfaces/src/test/java/com/appsmith/external/services/FilterDataServiceTest.java +++ b/app/server/appsmith-interfaces/src/test/java/com/appsmith/external/services/FilterDataServiceTest.java @@ -380,6 +380,53 @@ public class FilterDataServiceTest { assertEquals(filteredData.size(), 2); + } catch (IOException e) { + e.printStackTrace(); + } + } + + @Test + public void testValuesOfUnsupportedDataType() { + String data = "[\n" + + " {\n" + + " \"id\": 2381224,\n" + + " \"email id\": \"michael.lawson@reqres.in\",\n" + + " \"userName\": \"Michael Lawson\",\n" + + " \"productName\": \"Chicken Sandwich\",\n" + + " \"orderAmount\": 4.99,\n" + + " \"date\": \"2021-09-01\"\n" + + " },\n" + + " {\n" + + " \"id\": \"\",\n" + + " \"email id\": \"\",\n" + + " \"userName\": \"Lindsay Ferguson\",\n" + + " \"productName\": \"Tuna Salad\",\n" + + " \"orderAmount\": 9.99,\n" + + " \"date\": \"2021-09-01\"\n" + + " },\n" + + " {\n" + + " \"id\": \"\",\n" + + " \"email id\": \"\",\n" + + " \"userName\": \"Tobias Funke\",\n" + + " \"productName\": \"Beef steak\",\n" + + " \"orderAmount\": 19.99,\n" + + " \"date\": \"2021-09-01\"\n" + + " }\n" + + "]"; + + try { + ArrayNode items = (ArrayNode) objectMapper.readTree(data); + + List conditionList = new ArrayList<>(); + + Condition condition = new Condition("orderAmount", "LT", "15"); + conditionList.add(condition); + + ArrayNode filteredData = filterDataService.filterData(items, conditionList); + + assertEquals(filteredData.size(), 2); + + } catch (IOException e) { e.printStackTrace(); }