This is an automated email from the ASF dual-hosted git repository. jamesnetherton pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/camel-quarkus.git
commit edb21d583208ac4d602989d6c6ee0bfa5ad1eb9b Author: James Netherton <[email protected]> AuthorDate: Wed Nov 4 11:59:20 2020 +0000 Discover WireMock mappings from the classpath to keep quarkus-platform happy --- .../WireMockTestResourceLifecycleManager.java | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/integration-tests-support/wiremock/src/main/java/org/apache/camel/quarkus/test/wiremock/WireMockTestResourceLifecycleManager.java b/integration-tests-support/wiremock/src/main/java/org/apache/camel/quarkus/test/wiremock/WireMockTestResourceLifecycleManager.java index 5308534..6086b6d 100644 --- a/integration-tests-support/wiremock/src/main/java/org/apache/camel/quarkus/test/wiremock/WireMockTestResourceLifecycleManager.java +++ b/integration-tests-support/wiremock/src/main/java/org/apache/camel/quarkus/test/wiremock/WireMockTestResourceLifecycleManager.java @@ -26,6 +26,8 @@ import java.util.List; import java.util.Map; import com.github.tomakehurst.wiremock.WireMockServer; +import com.github.tomakehurst.wiremock.common.ClasspathFileSource; +import com.github.tomakehurst.wiremock.common.FileSource; import com.github.tomakehurst.wiremock.recording.RecordingStatus; import com.github.tomakehurst.wiremock.recording.SnapshotRecordResult; import com.github.tomakehurst.wiremock.stubbing.StubMapping; @@ -200,7 +202,9 @@ public abstract class WireMockTestResourceLifecycleManager implements QuarkusTes private WireMockServer createServer() { LOG.info("Starting WireMockServer"); MockBackendUtils.startMockBackend(true); - return new WireMockServer(options().dynamicPort()); + return new WireMockServer(options() + .dynamicPort() + .fileSource(new CamelQuarkusFileSource())); } /** @@ -212,4 +216,18 @@ public abstract class WireMockTestResourceLifecycleManager implements QuarkusTes String recordEnabled = System.getProperty("wiremock.record", System.getenv("WIREMOCK_RECORD")); return recordEnabled != null && recordEnabled.equals("true"); } + + /** + * A custom ClasspathFileSource so that WireMock mapping files can be resolved in the quarkus-platform build + */ + private static class CamelQuarkusFileSource extends ClasspathFileSource { + private CamelQuarkusFileSource() { + super(""); + } + + @Override + public FileSource child(String subDirectoryName) { + return new ClasspathFileSource(subDirectoryName); + } + } }
