From 637e298e94688f91d38b7adac344aa2a3a2f7dd1 Mon Sep 17 00:00:00 2001 From: Zara Lim Date: Mon, 22 Nov 2021 16:34:55 -0800 Subject: [PATCH 1/2] fix: port changes from #7863 to 5.4.x --- ksql-version-metrics-client/pom.xml | 24 ++----------------- .../VersionCheckerIntegrationTest.java | 23 +++++++++--------- 2 files changed, 13 insertions(+), 34 deletions(-) diff --git a/ksql-version-metrics-client/pom.xml b/ksql-version-metrics-client/pom.xml index aa076f5ae6c..393ffe51dae 100644 --- a/ksql-version-metrics-client/pom.xml +++ b/ksql-version-metrics-client/pom.xml @@ -59,29 +59,9 @@ - org.mock-server - mockserver-netty - 3.10.4 + com.github.tomakehurst + wiremock-jre8 test - - - ch.qos.logback - logback-classic - - - - - - org.mock-server - mockserver-client-java - 3.10.4 - test - - - ch.qos.logback - logback-classic - - diff --git a/ksql-version-metrics-client/src/test/java/io/confluent/ksql/version/metrics/VersionCheckerIntegrationTest.java b/ksql-version-metrics-client/src/test/java/io/confluent/ksql/version/metrics/VersionCheckerIntegrationTest.java index 97647328dbd..c22ae203cf2 100644 --- a/ksql-version-metrics-client/src/test/java/io/confluent/ksql/version/metrics/VersionCheckerIntegrationTest.java +++ b/ksql-version-metrics-client/src/test/java/io/confluent/ksql/version/metrics/VersionCheckerIntegrationTest.java @@ -15,19 +15,17 @@ package io.confluent.ksql.version.metrics; -import static org.mockserver.model.HttpRequest.request; - +import com.github.tomakehurst.wiremock.client.WireMock; +import com.github.tomakehurst.wiremock.core.WireMockConfiguration; +import com.github.tomakehurst.wiremock.junit.WireMockRule; import io.confluent.ksql.version.metrics.collector.KsqlModuleType; import io.confluent.support.metrics.BaseSupportConfig; import java.util.Properties; import java.util.concurrent.TimeUnit; import org.apache.kafka.test.TestUtils; -import org.junit.BeforeClass; import org.junit.Rule; import org.junit.Test; import org.junit.rules.Timeout; -import org.mockserver.integration.ClientAndProxy; -import org.mockserver.socket.PortFactory; public class VersionCheckerIntegrationTest { @@ -40,14 +38,15 @@ public class VersionCheckerIntegrationTest { .withLookingForStuckThread(true) .build(); - @BeforeClass - public static void startProxy() { - proxyPort = PortFactory.findFreePort(); - clientAndProxy = ClientAndProxy.startClientAndProxy(proxyPort); - } + @Rule + public WireMockRule wireMockRule = new WireMockRule( + WireMockConfiguration.wireMockConfig() + .dynamicPort() + ); @Test public void testMetricsAgent() throws InterruptedException { + WireMock.stubFor(WireMock.post("/ksql/anon").willReturn(WireMock.ok())); final KsqlVersionCheckerAgent versionCheckerAgent = new KsqlVersionCheckerAgent( () -> false @@ -57,13 +56,13 @@ public void testMetricsAgent() throws InterruptedException { .CONFLUENT_SUPPORT_METRICS_ENDPOINT_SECURE_ENABLE_CONFIG, "false"); versionCheckProps.setProperty( BaseSupportConfig.CONFLUENT_SUPPORT_PROXY_CONFIG, - "http://localhost:" + proxyPort + "http://localhost:" + wireMockRule.port() ); versionCheckerAgent.start(KsqlModuleType.SERVER, versionCheckProps); TestUtils.waitForCondition(() -> { try { - clientAndProxy.verify(request().withPath("/ksql/anon").withMethod("POST")); + WireMock.verify(WireMock.postRequestedFor(WireMock.urlPathEqualTo("/ksql/anon"))); return true; } catch (final AssertionError e) { return false; From f0e0a79f1ba2a2f391d501921b83faaf00a03326 Mon Sep 17 00:00:00 2001 From: Zara Lim Date: Mon, 22 Nov 2021 17:43:45 -0800 Subject: [PATCH 2/2] remove two lines --- .../ksql/version/metrics/VersionCheckerIntegrationTest.java | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/ksql-version-metrics-client/src/test/java/io/confluent/ksql/version/metrics/VersionCheckerIntegrationTest.java b/ksql-version-metrics-client/src/test/java/io/confluent/ksql/version/metrics/VersionCheckerIntegrationTest.java index c22ae203cf2..426fce5d008 100644 --- a/ksql-version-metrics-client/src/test/java/io/confluent/ksql/version/metrics/VersionCheckerIntegrationTest.java +++ b/ksql-version-metrics-client/src/test/java/io/confluent/ksql/version/metrics/VersionCheckerIntegrationTest.java @@ -28,10 +28,7 @@ import org.junit.rules.Timeout; public class VersionCheckerIntegrationTest { - - private static int proxyPort; - private static ClientAndProxy clientAndProxy; - + @Rule public final Timeout timeout = Timeout.builder() .withTimeout(30, TimeUnit.SECONDS)