Skip to content

Commit c5732a8

Browse files
authored
Add questdb as a database provider (#7244)
Previously, postgresql has been used as a database provider for QuestDB along with Testcontainers JDBC URL. `postgresql` has been deprecated and instead `questdb` has been added.
1 parent b69262e commit c5732a8

File tree

5 files changed

+25
-3
lines changed

5 files changed

+25
-3
lines changed

docs/modules/databases/jdbc.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ Insert `tc:` after `jdbc:` as follows. Note that the hostname, port and database
6969

7070
#### Using QuestDB
7171

72-
`jdbc:tc:postgresql:6.5.3:///databasename`
72+
`jdbc:tc:questdb:6.5.3:///databasename`
7373

7474
#### Using TimescaleDB
7575

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
package org.testcontainers.containers;
2+
3+
@Deprecated
4+
public class LegacyQuestDBProvider extends JdbcDatabaseContainerProvider {
5+
6+
@Override
7+
public boolean supports(String databaseType) {
8+
return databaseType.equals(QuestDBContainer.LEGACY_DATABASE_PROVIDER);
9+
}
10+
11+
@Override
12+
public JdbcDatabaseContainer newInstance(String tag) {
13+
return new QuestDBContainer(QuestDBContainer.DEFAULT_IMAGE_NAME.withTag(tag));
14+
}
15+
}

modules/questdb/src/main/java/org/testcontainers/containers/QuestDBContainer.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,10 @@
99
*/
1010
public class QuestDBContainer extends JdbcDatabaseContainer<QuestDBContainer> {
1111

12-
static final String DATABASE_PROVIDER = "postgresql";
12+
@Deprecated
13+
static final String LEGACY_DATABASE_PROVIDER = "postgresql";
14+
15+
static final String DATABASE_PROVIDER = "questdb";
1316

1417
private static final String DEFAULT_DATABASE_NAME = "qdb";
1518

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,2 @@
1+
org.testcontainers.containers.LegacyQuestDBProvider
12
org.testcontainers.containers.QuestDBProvider

modules/questdb/src/test/java/org/testcontainers/jdbc/questdb/QuestDBJDBCDriverTest.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,10 @@ public class QuestDBJDBCDriverTest extends AbstractJDBCDriverTest {
1313
@Parameterized.Parameters(name = "{index} - {0}")
1414
public static Iterable<Object[]> data() {
1515
return Arrays.asList(
16-
new Object[][] { { "jdbc:tc:postgresql://hostname/databasename", EnumSet.of(Options.PmdKnownBroken) } }
16+
new Object[][] {
17+
{ "jdbc:tc:postgresql://hostname/databasename", EnumSet.of(Options.PmdKnownBroken) },
18+
{ "jdbc:tc:questdb://hostname/databasename", EnumSet.of(Options.PmdKnownBroken) },
19+
}
1720
);
1821
}
1922
}

0 commit comments

Comments
 (0)