From e351a66027e4a0aec8a2c41311d3b567d5e7bcea Mon Sep 17 00:00:00 2001 From: Assamir Date: Sun, 23 Feb 2025 20:14:12 +0100 Subject: [PATCH] Init containers --- .../resources/MyMockServerClient.java | 24 ++++++------------- .../resources/MyTestResources.java | 5 ++-- .../resources/RawmindWebContainer.java | 7 ++---- .../mock/sample-mock-response-2.json | 10 ++++++++ 4 files changed, 21 insertions(+), 25 deletions(-) create mode 100644 mrchecker-playwright-framework/src/test/resources/mock/sample-mock-response-2.json diff --git a/mrchecker-playwright-framework/src/test/java/com/capgemini/infrastructure/resources/MyMockServerClient.java b/mrchecker-playwright-framework/src/test/java/com/capgemini/infrastructure/resources/MyMockServerClient.java index dc685a49..ef7f7ad0 100644 --- a/mrchecker-playwright-framework/src/test/java/com/capgemini/infrastructure/resources/MyMockServerClient.java +++ b/mrchecker-playwright-framework/src/test/java/com/capgemini/infrastructure/resources/MyMockServerClient.java @@ -36,30 +36,20 @@ public void startMockClient() { mockServerClient = new MockServerClient(mockServer.getHost(), mockServer.getServerPort()); // Add rule by file + // http://localhost:1080/mockserver/dashboard // http://localhost:1080/my-api/sample-1 - /* - { -"source": "MySystem", -"transportMode": "AIR", -"totalPackages": 1000, -"commercialValue": { -"cost": 200, -"currency": "USD" -}, -"isCancelled": false -} - */ addRule("/my-api/sample-1", "sample-mock-response-1.json"); + addRule("/my-api/sample-2", "sample-mock-response-2.json"); // Add conditional rule - addRuleConditionTxt("/cst/integration/api/createRequestV3", "20220415-43872", Map.of( - "AI24000595", "20220415-66666", - "BY24001263", "20220415-66666" + // http://localhost:1080/my-api/sample-text-1 + addRuleConditionTxt("/my-api/sample-text-1", "First sample response", Map.of( + "Key-string-in-the-body-1", "Second sample response", + "Key-string-in-the-body-2", "Third sample response" )); // Add text response - addRuleTxt("/cst/integration/api/closeRequest", "CST request closed"); - addRuleTxt("/cst/integration/api/proceedNextStep", "CST request proceeded to the next step"); + addRuleTxt("/my-api/sample-text-4", "Fourth sample response"); logger.info("Mock URL: {}:{}", mockServer.getHost(), mockServer.getServerPort()); } catch (Exception e) { diff --git a/mrchecker-playwright-framework/src/test/java/com/capgemini/infrastructure/resources/MyTestResources.java b/mrchecker-playwright-framework/src/test/java/com/capgemini/infrastructure/resources/MyTestResources.java index 0b7e2f17..86464cdf 100644 --- a/mrchecker-playwright-framework/src/test/java/com/capgemini/infrastructure/resources/MyTestResources.java +++ b/mrchecker-playwright-framework/src/test/java/com/capgemini/infrastructure/resources/MyTestResources.java @@ -11,7 +11,7 @@ import java.util.Map; public class MyTestResources implements QuarkusTestResourceLifecycleManager { -// private final Network network = TestNetwork.getInstance().getNetwork(); + // private final Network network = TestNetwork.getInstance().getNetwork(); private final Network network = TestNetwork.createReusableNetwork(); private RawmindWebContainer rawmindWebContainer = null; private MyMockServer myMockServer = null; @@ -29,9 +29,7 @@ public Map start() { private void startMockServer() { if (myMockServer == null || !isContainerRunning(Configuration.MY_MOCK_NAME)) { -// if(myMockServer == null || !isContainerRunning(Configuration.MY_MOCK_NAME)) { myMockServer = new MyMockServer(network); -// myMockServer.start(); if (!myMockServer.isRunning()) { myMockServer.start(); } @@ -71,6 +69,7 @@ private boolean isContainerRunning(String containerName) { public void stop() { if (!Configuration.DEBUG) { stopContainer(rawmindWebContainer); + stopContainer(myMockServer); } } diff --git a/mrchecker-playwright-framework/src/test/java/com/capgemini/infrastructure/resources/RawmindWebContainer.java b/mrchecker-playwright-framework/src/test/java/com/capgemini/infrastructure/resources/RawmindWebContainer.java index 5af01b65..e6ee936d 100644 --- a/mrchecker-playwright-framework/src/test/java/com/capgemini/infrastructure/resources/RawmindWebContainer.java +++ b/mrchecker-playwright-framework/src/test/java/com/capgemini/infrastructure/resources/RawmindWebContainer.java @@ -11,6 +11,7 @@ import org.testcontainers.utility.DockerImageName; import java.util.ArrayList; +import java.util.Arrays; public class RawmindWebContainer extends GenericContainer { private static final String NETWORK_ALIAS = "rawmind"; @@ -27,12 +28,8 @@ public RawmindWebContainer(Network network) { .withExposedPorts(APP_PORT) .waitingFor(Wait.forLogMessage(".*Running web-test service.*", 1)) .withStartupTimeout(java.time.Duration.ofSeconds(20)); - withCreateContainerCmdModifier(cmd -> cmd.withHostConfig( - new HostConfig().withPortBindings( - new PortBinding(Ports.Binding.bindPort(APP_PORT), new ExposedPort(APP_PORT)) - ) - )); withCreateContainerCmdModifier(cmd -> cmd.withName(Configuration.MY_WEB_APP_NAME)); + setPortBindings(Arrays.asList("8080:8080")); logger().info("RawmindWebContainer starting..."); } diff --git a/mrchecker-playwright-framework/src/test/resources/mock/sample-mock-response-2.json b/mrchecker-playwright-framework/src/test/resources/mock/sample-mock-response-2.json new file mode 100644 index 00000000..94dd1c5e --- /dev/null +++ b/mrchecker-playwright-framework/src/test/resources/mock/sample-mock-response-2.json @@ -0,0 +1,10 @@ +{ + "source": "MySystem-2", + "transportMode": "Land", + "totalPackages": 2000, + "commercialValue": { + "cost": 400, + "currency": "USD" + }, + "isCancelled": true +} \ No newline at end of file