Allow to accept the enterprise license during tests through an environment variable.

This commit is contained in:
Michael Simons
2019-07-12 15:19:10 +02:00
parent 493f4bdc42
commit cb3a3affe9

View File

@@ -69,6 +69,11 @@ public class Neo4jExtension implements BeforeAllCallback, BeforeEachCallback {
private static final String KEY_NEO4J_INSTANCE = "neo4j.standalone";
private static final String KEY_DRIVER_INSTANCE = "neo4j.driver";
private static final String SYS_PROPERTY_NEOJ4_URL = "SDN_RX_NEO4J_URL";
private static final String SYS_PROPERTY_NEO4J_PASSWORD = "SDN_RX_NEO4J_PASSWORD";
private static final String SYS_PROPERTY_NEO4J_ACCEPT_COMMERCIAL_EDITION = "SDN_RX_NEO4J_ACCEPT_COMMERCIAL_EDITION";
private static final String SYS_PROPERTY_NEO4J_VERSION = "SDN_RX_NEO4J_VERSION";
private static Set<String> COMMUNITY_EDITION_INDICATOR = Collections.singleton("community");
private static Set<String> COMMERCIAL_EDITION_INDICATOR = new HashSet<>(Arrays.asList("commercial", "enterprise"));
@@ -84,8 +89,8 @@ public class Neo4jExtension implements BeforeAllCallback, BeforeEachCallback {
return;
}
String neo4jUrl = Optional.ofNullable(System.getenv("SDN_RX_NEO4J_URL")).orElse("");
String neo4jPassword = Optional.ofNullable(System.getenv("SDN_RX_NEO4J_PASSWORD")).orElse("");
String neo4jUrl = Optional.ofNullable(System.getenv(SYS_PROPERTY_NEOJ4_URL)).orElse("");
String neo4jPassword = Optional.ofNullable(System.getenv(SYS_PROPERTY_NEO4J_PASSWORD)).orElse("");
ExtensionContext.Store contextStore = context.getStore(NAMESPACE);
Neo4jConnectionSupport neo4jConnectionSupport = contextStore
@@ -240,10 +245,11 @@ public class Neo4jExtension implements BeforeAllCallback, BeforeEachCallback {
static class ContainerAdapter implements ExtensionContext.Store.CloseableResource {
private final String imageName = Optional.ofNullable(System.getenv("SDN_RX_NEO4J_VERSION")).orElse("3.5.0");
private final String imageVersion = Optional.ofNullable(System.getenv(SYS_PROPERTY_NEO4J_VERSION)).orElse("3.5.6");
private final Neo4jContainer<?> neo4jContainer = new Neo4jContainer<>("neo4j:" + imageName)
.withoutAuthentication();
private final Neo4jContainer<?> neo4jContainer = new Neo4jContainer<>("neo4j:" + imageVersion)
.withoutAuthentication()
.withEnv("NEO4J_ACCEPT_LICENSE_AGREEMENT", Optional.ofNullable(System.getenv(SYS_PROPERTY_NEO4J_ACCEPT_COMMERCIAL_EDITION)).orElse("no"));
public String getBoltUrl() {
return neo4jContainer.getBoltUrl();