From 3373fc6b4cbfd2a67776f3d3437921bdf4b4d33e Mon Sep 17 00:00:00 2001 From: Kumar Gaurav Date: Sat, 12 Sep 2026 02:09:47 +0530 Subject: [PATCH] Append URL parameters in TrinoContainer.getJdbcUrl() Co-Authored-By: Claude Fable 5 --- .../containers/TrinoContainer.java | 6 ++++-- .../testcontainers/trino/TrinoContainer.java | 6 ++++-- .../trino/TrinoContainerTest.java | 20 +++++++++++++++++++ 3 files changed, 28 insertions(+), 4 deletions(-) diff --git a/modules/trino/src/main/java/org/testcontainers/containers/TrinoContainer.java b/modules/trino/src/main/java/org/testcontainers/containers/TrinoContainer.java index 4f61b6e2352..84930393618 100644 --- a/modules/trino/src/main/java/org/testcontainers/containers/TrinoContainer.java +++ b/modules/trino/src/main/java/org/testcontainers/containers/TrinoContainer.java @@ -64,11 +64,13 @@ public String getDriverClassName() { @Override public String getJdbcUrl() { + String additionalUrlParams = constructUrlParameters("?", "&"); return String.format( - "jdbc:trino://%s:%s/%s", + "jdbc:trino://%s:%s/%s%s", getHost(), getMappedPort(TRINO_PORT), - Strings.nullToEmpty(catalog) + Strings.nullToEmpty(catalog), + additionalUrlParams ); } diff --git a/modules/trino/src/main/java/org/testcontainers/trino/TrinoContainer.java b/modules/trino/src/main/java/org/testcontainers/trino/TrinoContainer.java index 145ae4b454c..cc6d30f69f5 100644 --- a/modules/trino/src/main/java/org/testcontainers/trino/TrinoContainer.java +++ b/modules/trino/src/main/java/org/testcontainers/trino/TrinoContainer.java @@ -62,11 +62,13 @@ public String getDriverClassName() { @Override public String getJdbcUrl() { + String additionalUrlParams = constructUrlParameters("?", "&"); return String.format( - "jdbc:trino://%s:%s/%s", + "jdbc:trino://%s:%s/%s%s", getHost(), getMappedPort(TRINO_PORT), - Strings.nullToEmpty(catalog) + Strings.nullToEmpty(catalog), + additionalUrlParams ); } diff --git a/modules/trino/src/test/java/org/testcontainers/trino/TrinoContainerTest.java b/modules/trino/src/test/java/org/testcontainers/trino/TrinoContainerTest.java index c76c1bbb322..a179afe36f9 100644 --- a/modules/trino/src/test/java/org/testcontainers/trino/TrinoContainerTest.java +++ b/modules/trino/src/test/java/org/testcontainers/trino/TrinoContainerTest.java @@ -64,6 +64,26 @@ void testInitScript() throws Exception { } } + @Test + void testWithAdditionalUrlParamInJdbcUrl() throws Exception { + try ( + TrinoContainer trino = new TrinoContainer(TrinoTestImages.TRINO_TEST_IMAGE) + .withUrlParam("applicationNamePrefix", "tc-") + ) { + trino.start(); + String jdbcUrl = trino.getJdbcUrl(); + assertThat(jdbcUrl).contains("?"); + assertThat(jdbcUrl).contains("applicationNamePrefix=tc-"); + try ( + Connection connection = trino.createConnection(); + Statement statement = connection.createStatement(); + ResultSet resultSet = statement.executeQuery("SELECT 1") + ) { + assertThat(resultSet.next()).as("results").isTrue(); + } + } + } + private void assertContainerHasCorrectExposedAndLivenessCheckPorts(TrinoContainer trino) { assertThat(trino.getExposedPorts()).containsExactly(8080); assertThat(trino.getLivenessCheckPortNumbers()).containsExactly(trino.getMappedPort(8080));