Class JdbiTestcontainersExtension
java.lang.Object
org.jdbi.v3.testing.junit5.JdbiExtension
org.jdbi.v3.testing.junit5.tc.JdbiTestcontainersExtension
- All Implemented Interfaces:
AfterAllCallback
,AfterEachCallback
,BeforeAllCallback
,BeforeEachCallback
,Extension
,ParameterResolver
Support Testcontainer JDBC containers as database for Jdbi tests.
-
Method Summary
Modifier and TypeMethodDescriptiongetUrl()
Returns a JDBC url representing the data source used by this extension.static JdbiTestcontainersExtension
instance
(TestcontainersDatabaseInformation databaseInformation, JdbcDatabaseContainer<?> jdbcDatabaseContainer) Create a newJdbiExtension
that uses the suppliedJdbcDatabaseContainer
as database.static JdbiTestcontainersExtension
instance
(JdbcDatabaseContainer<?> jdbcDatabaseContainer) Create a newJdbiExtension
that uses the suppliedJdbcDatabaseContainer
as database.setShutdownWaitTimeInSeconds
(int seconds) Sets the maximum wait time for shutting down the extension.Methods inherited from class org.jdbi.v3.testing.junit5.JdbiExtension
afterAll, afterEach, attach, beforeAll, beforeEach, enableLeakChecker, externalPostgres, getJdbi, getSharedHandle, h2, installPlugins, openHandle, otjEmbeddedPostgres, postgres, resolveParameter, sqlite, supportsParameter, withConfig, withInitializer, withPlugin, withPlugins
-
Method Details
-
instance
Create a newJdbiExtension
that uses the suppliedJdbcDatabaseContainer
as database. This must be a supported container instance.- Parameters:
jdbcDatabaseContainer
- A supportedJdbcDatabaseContainer
instance.- Returns:
- An initialized
JdbiExtension
instance that uses the database container. - Throws:
IllegalArgumentException
- If the provided container class is not supported.
-
instance
public static JdbiTestcontainersExtension instance(TestcontainersDatabaseInformation databaseInformation, JdbcDatabaseContainer<?> jdbcDatabaseContainer) Create a newJdbiExtension
that uses the suppliedJdbcDatabaseContainer
as database.- Parameters:
databaseInformation
- ATestcontainersDatabaseInformation
instance that describes how to create new test-isolation databases or schemata.jdbcDatabaseContainer
- AJdbcDatabaseContainer
instance.- Returns:
- An initialized
JdbiExtension
instance that uses the database container.
-
setShutdownWaitTimeInSeconds
Sets the maximum wait time for shutting down the extension.- Since:
- 3.45.0
- See Also:
-
getUrl
Description copied from class:JdbiExtension
Returns a JDBC url representing the data source used by this extension. This url is database-specific and may or may not be used to connect to the data source outside testing code that uses this extension (e.g. theJdbiSqliteExtension
returns a constant uri for all database instances).- Specified by:
getUrl
in classJdbiExtension
- Returns:
- A string representing the JDBC URL.
-