Package fr.ght1pc9kc.testy.jooq
Class WithInMemoryDatasource
java.lang.Object
fr.ght1pc9kc.testy.jooq.WithInMemoryDatasource
- All Implemented Interfaces:
DatasourceExtension,org.junit.jupiter.api.extension.AfterAllCallback,org.junit.jupiter.api.extension.BeforeAllCallback,org.junit.jupiter.api.extension.Extension,org.junit.jupiter.api.extension.ParameterResolver,org.junit.jupiter.api.extension.TestInstantiationAwareExtension
public class WithInMemoryDatasource
extends Object
implements org.junit.jupiter.api.extension.BeforeAllCallback, org.junit.jupiter.api.extension.AfterAllCallback, org.junit.jupiter.api.extension.ParameterResolver, DatasourceExtension
Allow to create an H2 in-memory database.
Usable with ExtendWith or
RegisterExtension:
@RegisterExtension
static WithInMemoryDatasource wDs = WithInMemoryDatasource.builder()
.setCatalog(CATALOG_NAME)
.wrapTcpServer(true)
.build();
The default value for the catalog is random UUID. By default the TCP Server was not run.
The database parameters :
- MODE=MySQL
- DB_CLOSE_DELAY=-1
- DATABASE_TO_UPPER=false
- TIMEZONE=UTC
- SCHEMA created and set
For inject the auto-generated catalog name use DbCatalogName annotation
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classNested classes/interfaces inherited from interface org.junit.jupiter.api.extension.TestInstantiationAwareExtension
org.junit.jupiter.api.extension.TestInstantiationAwareExtension.ExtensionContextScope -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidafterAll(org.junit.jupiter.api.extension.ExtensionContext context) voidbeforeAll(org.junit.jupiter.api.extension.ExtensionContext context) builder()getCatalog(org.junit.jupiter.api.extension.ExtensionContext context) Retrieve the name of the DataSource cataloggetDataSource(org.junit.jupiter.api.extension.ExtensionContext context) Retrieve theDataSourcefrom the contextual extension StoreresolveParameter(org.junit.jupiter.api.extension.ParameterContext parameterContext, org.junit.jupiter.api.extension.ExtensionContext extensionContext) booleansupportsParameter(org.junit.jupiter.api.extension.ParameterContext parameterContext, org.junit.jupiter.api.extension.ExtensionContext extensionContext) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.junit.jupiter.api.extension.TestInstantiationAwareExtension
getTestInstantiationExtensionContextScope
-
Constructor Details
-
WithInMemoryDatasource
public WithInMemoryDatasource()
-
-
Method Details
-
beforeAll
- Specified by:
beforeAllin interfaceorg.junit.jupiter.api.extension.BeforeAllCallback- Throws:
Exception
-
getCatalog
Description copied from interface:DatasourceExtensionRetrieve the name of the DataSource catalog- Specified by:
getCatalogin interfaceDatasourceExtension- Parameters:
context- The extension context- Returns:
- The catalog name
-
getDataSource
Description copied from interface:DatasourceExtensionRetrieve theDataSourcefrom the contextual extension Store- Specified by:
getDataSourcein interfaceDatasourceExtension- Parameters:
context- The extension context- Returns:
- A usable DataSource
-
afterAll
public void afterAll(org.junit.jupiter.api.extension.ExtensionContext context) - Specified by:
afterAllin interfaceorg.junit.jupiter.api.extension.AfterAllCallback
-
supportsParameter
public boolean supportsParameter(org.junit.jupiter.api.extension.ParameterContext parameterContext, org.junit.jupiter.api.extension.ExtensionContext extensionContext) - Specified by:
supportsParameterin interfaceorg.junit.jupiter.api.extension.ParameterResolver
-
resolveParameter
public Object resolveParameter(org.junit.jupiter.api.extension.ParameterContext parameterContext, org.junit.jupiter.api.extension.ExtensionContext extensionContext) - Specified by:
resolveParameterin interfaceorg.junit.jupiter.api.extension.ParameterResolver
-
builder
-