From 6ad2c9825240d38ee7d8978deb0dec6c0e4d8720 Mon Sep 17 00:00:00 2001 From: Darin Kelkhoff Date: Fri, 2 Jun 2023 11:27:44 -0500 Subject: [PATCH 1/3] Try to fix bulk edit test (routes) --- .../kingsrook/qqq/materialdashboard/lib/QBaseSeleniumTest.java | 3 ++- .../kingsrook/qqq/materialdashboard/tests/BulkEditTest.java | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/test/java/com/kingsrook/qqq/materialdashboard/lib/QBaseSeleniumTest.java b/src/test/java/com/kingsrook/qqq/materialdashboard/lib/QBaseSeleniumTest.java index 1ea9301..8f3ece1 100755 --- a/src/test/java/com/kingsrook/qqq/materialdashboard/lib/QBaseSeleniumTest.java +++ b/src/test/java/com/kingsrook/qqq/materialdashboard/lib/QBaseSeleniumTest.java @@ -74,7 +74,8 @@ public class QBaseSeleniumTest .withRouteToFile("/metaData", "metaData/index.json") .withRouteToFile("/metaData/authentication", "metaData/authentication.json") .withRouteToFile("/metaData/table/person", "metaData/table/person.json") - .withRouteToFile("/metaData/table/city", "metaData/table/person.json"); + .withRouteToFile("/metaData/table/city", "metaData/table/person.json") + .withRouteToFile("/processes/querySavedFilter/init", "processes/querySavedFilter/init.json"); } diff --git a/src/test/java/com/kingsrook/qqq/materialdashboard/tests/BulkEditTest.java b/src/test/java/com/kingsrook/qqq/materialdashboard/tests/BulkEditTest.java index 54ec041..fc78abd 100755 --- a/src/test/java/com/kingsrook/qqq/materialdashboard/tests/BulkEditTest.java +++ b/src/test/java/com/kingsrook/qqq/materialdashboard/tests/BulkEditTest.java @@ -39,7 +39,6 @@ public class BulkEditTest extends QBaseSeleniumTest @Override protected void addJavalinRoutes(QSeleniumJavalin qSeleniumJavalin) { - super.addJavalinRoutes(qSeleniumJavalin); addCommonRoutesForThisTest(qSeleniumJavalin); qSeleniumJavalin .withRouteToFile("/metaData/process/person.bulkEdit", "metaData/process/person.bulkEdit.json") @@ -56,8 +55,10 @@ public class BulkEditTest extends QBaseSeleniumTest *******************************************************************************/ private void addCommonRoutesForThisTest(QSeleniumJavalin qSeleniumJavalin) { + super.addJavalinRoutes(qSeleniumJavalin); qSeleniumJavalin.withRouteToFile("/data/person/count", "data/person/count.json"); qSeleniumJavalin.withRouteToFile("/data/person/query", "data/person/index.json"); + qSeleniumJavalin.withRouteToString("/processes/person.bulkEdit/74a03a7d-2f53-4784-9911-3a21f7646c43/records", "[]"); } From 5d42f2969642779320b19ca98c4bc19c5e625f72 Mon Sep 17 00:00:00 2001 From: Darin Kelkhoff Date: Fri, 2 Jun 2023 11:39:55 -0500 Subject: [PATCH 2/3] Remove redundant route --- .../kingsrook/qqq/materialdashboard/tests/SavedFiltersTest.java | 1 - 1 file changed, 1 deletion(-) diff --git a/src/test/java/com/kingsrook/qqq/materialdashboard/tests/SavedFiltersTest.java b/src/test/java/com/kingsrook/qqq/materialdashboard/tests/SavedFiltersTest.java index b35a948..1252d6b 100755 --- a/src/test/java/com/kingsrook/qqq/materialdashboard/tests/SavedFiltersTest.java +++ b/src/test/java/com/kingsrook/qqq/materialdashboard/tests/SavedFiltersTest.java @@ -46,7 +46,6 @@ public class SavedFiltersTest extends QBaseSeleniumTest protected void addJavalinRoutes(QSeleniumJavalin qSeleniumJavalin) { addStandardRoutesForThisTest(qSeleniumJavalin); - qSeleniumJavalin.withRouteToFile("/processes/querySavedFilter/init", "processes/querySavedFilter/init.json"); } From 0eb7b9faa1aab6fbee5eda3f1523893fc35abfe2 Mon Sep 17 00:00:00 2001 From: Darin Kelkhoff Date: Fri, 2 Jun 2023 11:53:02 -0500 Subject: [PATCH 3/3] treat routes as map where paths are keys, and they can be overwritten - more flexibilty in setting up tests w/ custom override paths --- .../lib/javalin/QSeleniumJavalin.java | 27 ++++++++++--------- .../lib/javalin/RouteFromFileHandler.java | 7 +++-- .../lib/javalin/RouteFromStringHandler.java | 7 +++-- 3 files changed, 20 insertions(+), 21 deletions(-) diff --git a/src/test/java/com/kingsrook/qqq/materialdashboard/lib/javalin/QSeleniumJavalin.java b/src/test/java/com/kingsrook/qqq/materialdashboard/lib/javalin/QSeleniumJavalin.java index 65c62ec..455b34b 100755 --- a/src/test/java/com/kingsrook/qqq/materialdashboard/lib/javalin/QSeleniumJavalin.java +++ b/src/test/java/com/kingsrook/qqq/materialdashboard/lib/javalin/QSeleniumJavalin.java @@ -3,10 +3,11 @@ package com.kingsrook.qqq.materialdashboard.lib.javalin; import java.util.ArrayList; import java.util.Collections; +import java.util.LinkedHashMap; import java.util.List; +import java.util.Map; import com.kingsrook.qqq.materialdashboard.lib.QSeleniumLib; import io.javalin.Javalin; -import org.apache.commons.lang3.tuple.Pair; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import org.eclipse.jetty.server.Connector; @@ -25,8 +26,8 @@ public class QSeleniumJavalin private long WAIT_SECONDS = 10; - private List> routesToFiles = new ArrayList<>(); - private List> routesToStrings = new ArrayList<>(); + private Map routesToFiles = new LinkedHashMap<>(); + private Map routesToStrings = new LinkedHashMap<>(); private Javalin javalin; @@ -71,9 +72,9 @@ public class QSeleniumJavalin { if(this.routesToFiles == null) { - this.routesToFiles = new ArrayList<>(); + this.routesToFiles = new LinkedHashMap<>(); } - this.routesToFiles.add(Pair.of(path, fixtureFilePath)); + this.routesToFiles.put(path, fixtureFilePath); return (this); } @@ -86,9 +87,9 @@ public class QSeleniumJavalin { if(this.routesToStrings == null) { - this.routesToStrings = new ArrayList<>(); + this.routesToStrings = new LinkedHashMap<>(); } - this.routesToStrings.add(Pair.of(path, responseString)); + this.routesToStrings.put(path, responseString); return (this); } @@ -105,11 +106,11 @@ public class QSeleniumJavalin { javalin.routes(() -> { - for(Pair routeToFile : routesToFiles) + for(Map.Entry routeToFile : routesToFiles.entrySet()) { LOG.debug("Setting up route for [" + routeToFile.getKey() + "] => [" + routeToFile.getValue() + "]"); - get(routeToFile.getKey(), new RouteFromFileHandler(this, routeToFile)); - post(routeToFile.getKey(), new RouteFromFileHandler(this, routeToFile)); + get(routeToFile.getKey(), new RouteFromFileHandler(this, routeToFile.getKey(), routeToFile.getValue())); + post(routeToFile.getKey(), new RouteFromFileHandler(this, routeToFile.getKey(), routeToFile.getValue())); } }); } @@ -118,11 +119,11 @@ public class QSeleniumJavalin { javalin.routes(() -> { - for(Pair routeToString : routesToStrings) + for(Map.Entry routeToString : routesToStrings.entrySet()) { LOG.debug("Setting up route for [" + routeToString.getKey() + "] => [" + routeToString.getValue() + "]"); - get(routeToString.getKey(), new RouteFromStringHandler(this, routeToString)); - post(routeToString.getKey(), new RouteFromStringHandler(this, routeToString)); + get(routeToString.getKey(), new RouteFromStringHandler(this, routeToString.getKey(), routeToString.getValue())); + post(routeToString.getKey(), new RouteFromStringHandler(this, routeToString.getKey(), routeToString.getValue())); } }); } diff --git a/src/test/java/com/kingsrook/qqq/materialdashboard/lib/javalin/RouteFromFileHandler.java b/src/test/java/com/kingsrook/qqq/materialdashboard/lib/javalin/RouteFromFileHandler.java index 364664c..3861623 100755 --- a/src/test/java/com/kingsrook/qqq/materialdashboard/lib/javalin/RouteFromFileHandler.java +++ b/src/test/java/com/kingsrook/qqq/materialdashboard/lib/javalin/RouteFromFileHandler.java @@ -6,7 +6,6 @@ import java.util.List; import io.javalin.http.Context; import io.javalin.http.Handler; import org.apache.commons.io.IOUtils; -import org.apache.commons.lang3.tuple.Pair; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; @@ -28,11 +27,11 @@ public class RouteFromFileHandler implements Handler ** Constructor ** *******************************************************************************/ - public RouteFromFileHandler(QSeleniumJavalin qSeleniumJavalin, Pair routeToFilePath) + public RouteFromFileHandler(QSeleniumJavalin qSeleniumJavalin, String route, String filePath) { this.qSeleniumJavalin = qSeleniumJavalin; - this.route = routeToFilePath.getKey(); - this.filePath = routeToFilePath.getValue(); + this.route = route; + this.filePath = filePath; } diff --git a/src/test/java/com/kingsrook/qqq/materialdashboard/lib/javalin/RouteFromStringHandler.java b/src/test/java/com/kingsrook/qqq/materialdashboard/lib/javalin/RouteFromStringHandler.java index 3dc7e93..9de15a8 100755 --- a/src/test/java/com/kingsrook/qqq/materialdashboard/lib/javalin/RouteFromStringHandler.java +++ b/src/test/java/com/kingsrook/qqq/materialdashboard/lib/javalin/RouteFromStringHandler.java @@ -3,7 +3,6 @@ package com.kingsrook.qqq.materialdashboard.lib.javalin; import io.javalin.http.Context; import io.javalin.http.Handler; -import org.apache.commons.lang3.tuple.Pair; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; @@ -25,11 +24,11 @@ public class RouteFromStringHandler implements Handler ** Constructor ** *******************************************************************************/ - public RouteFromStringHandler(QSeleniumJavalin qSeleniumJavalin, Pair routeToStringPath) + public RouteFromStringHandler(QSeleniumJavalin qSeleniumJavalin, String route, String responseString) { this.qSeleniumJavalin = qSeleniumJavalin; - this.route = routeToStringPath.getKey(); - this.responseString = routeToStringPath.getValue(); + this.route = route; + this.responseString = responseString; }