in grails-forge-core/src/main/java/org/grails/forge/feature/database/TestContainers.java [55:79]
public void apply(GeneratorContext generatorContext) {
generatorContext.addDependency(testContainerTestDependency("testcontainers"));
generatorContext.getFeature(DatabaseDriverFeature.class).ifPresent(driverFeature -> {
generatorContext.getFeature(DatabaseDriverConfigurationFeature.class).ifPresent(driverConfiguration -> {
String driver = "org.testcontainers.jdbc.ContainerDatabaseDriver";
if (driverFeature instanceof SQLServer) {
generatorContext.addTemplate("sqlserverEula", new StringTemplate("src/test/resources/container-license-acceptance.txt", "mcr.microsoft.com/mssql/server:2019-CU4-ubuntu-16.04"));
}
urlForDatabaseDriverFeature(driverFeature).ifPresent(url -> {
Configuration testConfig = generatorContext.getConfiguration("test", ApplicationConfiguration.testConfig());
testConfig.put(driverConfiguration.getUrlKey(), url);
testConfig.put(driverConfiguration.getDriverKey(), driver);
});
artifactIdForDriverFeature(driverFeature).ifPresent(dependencyArtifactId ->
generatorContext.addDependency(testContainerTestDependency(dependencyArtifactId)));
});
});
testContainerArtifactIdByTestFramework(generatorContext.getTestFramework()).ifPresent(testArtifactId -> {
generatorContext.addDependency(testContainerTestDependency(testArtifactId));
});
if (generatorContext.isFeaturePresent(MongoFeature.class) || generatorContext.isFeaturePresent(MongoGorm.class)) {
generatorContext.addDependency(testContainerTestDependency("mongodb"));
}
}