Class R2DBCMariaDBTestResourceProvider
java.lang.Object
io.micronaut.testresources.testcontainers.AbstractTestContainersProvider<org.testcontainers.mariadb.MariaDBContainer>
io.micronaut.testresources.r2dbc.core.AbstractR2DBCTestResourceProvider<org.testcontainers.mariadb.MariaDBContainer>
io.micronaut.testresources.r2dbc.mariadb.R2DBCMariaDBTestResourceProvider
- All Implemented Interfaces:
io.micronaut.core.order.Ordered, TestResourcesResolver, ToggableTestResourcesResolver
public class R2DBCMariaDBTestResourceProvider
extends AbstractR2DBCTestResourceProvider<org.testcontainers.mariadb.MariaDBContainer>
A test resource provider for reactive MariaDB.
-
Nested Class Summary
Nested classes/interfaces inherited from class AbstractTestContainersProvider
AbstractTestContainersProvider.ContainerCommand -
Field Summary
FieldsFields inherited from interface io.micronaut.core.order.Ordered
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCEFields inherited from interface TestResourcesResolver
TEST_RESOURCES_PROPERTY -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voidcreateAdditionalDatabase(org.testcontainers.mariadb.MariaDBContainer container, String databaseName) Creates an additional logical database inside an already started container.protected org.testcontainers.mariadb.MariaDBContainercreateContainer(org.testcontainers.utility.DockerImageName imageName, Map<String, Object> requestedProperties, Map<String, Object> testResourcesConfig) Creates the test container.extractDefaultDatabaseName(org.testcontainers.mariadb.MariaDBContainer container) Extracts the default logical database name already configured on the running container.protected Optional<io.r2dbc.spi.ConnectionFactoryOptions> extractOptions(org.testcontainers.containers.GenericContainer<?> container) protected StringReturns the default image name.Returns a display name for a test resources resolver, used for debugging purposes.protected StringReturns the name of the resource resolver, for example "kafka" or "mysql".protected booleanIndicates whether this provider can create additional logical databases inside the same running container.Methods inherited from class AbstractR2DBCTestResourceProvider
findRequestedDatabaseName, getContainerOwnerKey, getContainerQuery, getDbTypes, getRequiredProperties, getRequiredPropertyEntries, getResolvableProperties, prepareContainer, resolveProperty, resolveProperty, resolveWithoutContainer, shouldAnswerMethods inherited from class AbstractTestContainersProvider
configureContainer, executeInContainer, getName, getOrder, resolve, stringOrNullMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface TestResourcesResolver
getIdMethods inherited from interface ToggableTestResourcesResolver
isEnabled
-
Field Details
-
DISPLAY_NAME
- See Also:
-
-
Constructor Details
-
R2DBCMariaDBTestResourceProvider
public R2DBCMariaDBTestResourceProvider()
-
-
Method Details
-
getDisplayName
Description copied from interface:TestResourcesResolverReturns a display name for a test resources resolver, used for debugging purposes.- Returns:
- the display name
-
getSimpleName
Description copied from class:AbstractTestContainersProviderReturns the name of the resource resolver, for example "kafka" or "mysql".- Specified by:
getSimpleNamein classAbstractTestContainersProvider<org.testcontainers.mariadb.MariaDBContainer>- Returns:
- the name of the resolver
-
getDefaultImageName
Description copied from class:AbstractTestContainersProviderReturns the default image name.- Specified by:
getDefaultImageNamein classAbstractTestContainersProvider<org.testcontainers.mariadb.MariaDBContainer>- Returns:
- the default image name.
-
supportsMultipleDatabases
protected boolean supportsMultipleDatabases()Description copied from class:AbstractR2DBCTestResourceProviderIndicates whether this provider can create additional logical databases inside the same running container. Subclasses overriding this method must also implement the matching database-creation hooks for the same container type.- Overrides:
supportsMultipleDatabasesin classAbstractR2DBCTestResourceProvider<org.testcontainers.mariadb.MariaDBContainer>- Returns:
truewhen additional logical databases are supported
-
createAdditionalDatabase
protected void createAdditionalDatabase(org.testcontainers.mariadb.MariaDBContainer container, String databaseName) Description copied from class:AbstractR2DBCTestResourceProviderCreates an additional logical database inside an already started container. This is only invoked whenAbstractR2DBCTestResourceProvider.supportsMultipleDatabases()returnstrue, so subclasses should override both hooks together.- Overrides:
createAdditionalDatabasein classAbstractR2DBCTestResourceProvider<org.testcontainers.mariadb.MariaDBContainer>- Parameters:
container- the running containerdatabaseName- the database to create
-
extractDefaultDatabaseName
protected Optional<String> extractDefaultDatabaseName(org.testcontainers.mariadb.MariaDBContainer container) Description copied from class:AbstractR2DBCTestResourceProviderExtracts the default logical database name already configured on the running container. Subclasses may override when the provider can compare requested databases against a provider-specific default.- Overrides:
extractDefaultDatabaseNamein classAbstractR2DBCTestResourceProvider<org.testcontainers.mariadb.MariaDBContainer>- Parameters:
container- the running container- Returns:
- the default logical database name, if one can be derived
-
extractOptions
protected Optional<io.r2dbc.spi.ConnectionFactoryOptions> extractOptions(org.testcontainers.containers.GenericContainer<?> container) - Specified by:
extractOptionsin classAbstractR2DBCTestResourceProvider<org.testcontainers.mariadb.MariaDBContainer>
-
createContainer
protected org.testcontainers.mariadb.MariaDBContainer createContainer(org.testcontainers.utility.DockerImageName imageName, Map<String, Object> requestedProperties, Map<String, Object> testResourcesConfig) Description copied from class:AbstractTestContainersProviderCreates the test container.- Specified by:
createContainerin classAbstractTestContainersProvider<org.testcontainers.mariadb.MariaDBContainer>- Parameters:
imageName- the docker image namerequestedProperties- the resolved propertiestestResourcesConfig- the test resources configuration- Returns:
- a container
-