Use different default database names for Oracle XE and Oracle Free
Closes gh-38476
This commit is contained in:
@@ -35,77 +35,80 @@ class OracleEnvironmentTests {
|
||||
@Test
|
||||
void getUsernameWhenHasAppUser() {
|
||||
OracleEnvironment environment = new OracleEnvironment(
|
||||
Map.of("APP_USER", "alice", "APP_USER_PASSWORD", "secret"));
|
||||
Map.of("APP_USER", "alice", "APP_USER_PASSWORD", "secret"), "defaultDb");
|
||||
assertThat(environment.getUsername()).isEqualTo("alice");
|
||||
}
|
||||
|
||||
@Test
|
||||
void getUsernameWhenHasNoAppUser() {
|
||||
OracleEnvironment environment = new OracleEnvironment(Map.of("ORACLE_PASSWORD", "secret"));
|
||||
OracleEnvironment environment = new OracleEnvironment(Map.of("ORACLE_PASSWORD", "secret"), "defaultDb");
|
||||
assertThat(environment.getUsername()).isEqualTo("system");
|
||||
}
|
||||
|
||||
@Test
|
||||
void getPasswordWhenHasAppPassword() {
|
||||
OracleEnvironment environment = new OracleEnvironment(
|
||||
Map.of("APP_USER", "alice", "APP_USER_PASSWORD", "secret"));
|
||||
Map.of("APP_USER", "alice", "APP_USER_PASSWORD", "secret"), "defaultDb");
|
||||
assertThat(environment.getPassword()).isEqualTo("secret");
|
||||
}
|
||||
|
||||
@Test
|
||||
void getPasswordWhenHasOraclePassword() {
|
||||
OracleEnvironment environment = new OracleEnvironment(Map.of("ORACLE_PASSWORD", "secret"));
|
||||
OracleEnvironment environment = new OracleEnvironment(Map.of("ORACLE_PASSWORD", "secret"), "defaultDb");
|
||||
assertThat(environment.getPassword()).isEqualTo("secret");
|
||||
}
|
||||
|
||||
@Test
|
||||
void createWhenRandomPasswordAndAppPasswordDoesNotThrow() {
|
||||
assertThatNoException().isThrownBy(() -> new OracleEnvironment(
|
||||
Map.of("APP_USER", "alice", "APP_USER_PASSWORD", "secret", "ORACLE_RANDOM_PASSWORD", "true")));
|
||||
Map.of("APP_USER", "alice", "APP_USER_PASSWORD", "secret", "ORACLE_RANDOM_PASSWORD", "true"),
|
||||
"defaultDb"));
|
||||
}
|
||||
|
||||
@Test
|
||||
void createWhenRandomPasswordThrowsException() {
|
||||
assertThatIllegalStateException()
|
||||
.isThrownBy(() -> new OracleEnvironment(Map.of("ORACLE_RANDOM_PASSWORD", "true")))
|
||||
.isThrownBy(() -> new OracleEnvironment(Map.of("ORACLE_RANDOM_PASSWORD", "true"), "defaultDb"))
|
||||
.withMessage("ORACLE_RANDOM_PASSWORD is not supported without APP_USER and APP_USER_PASSWORD");
|
||||
}
|
||||
|
||||
@Test
|
||||
void createWhenAppUserAndNoAppPasswordThrowsException() {
|
||||
assertThatIllegalStateException().isThrownBy(() -> new OracleEnvironment(Map.of("APP_USER", "alice")))
|
||||
assertThatIllegalStateException()
|
||||
.isThrownBy(() -> new OracleEnvironment(Map.of("APP_USER", "alice"), "defaultDb"))
|
||||
.withMessage("No Oracle app password found");
|
||||
}
|
||||
|
||||
@Test
|
||||
void createWhenAppUserAndEmptyAppPasswordThrowsException() {
|
||||
assertThatIllegalStateException()
|
||||
.isThrownBy(() -> new OracleEnvironment(Map.of("APP_USER", "alice", "APP_USER_PASSWORD", "")))
|
||||
.isThrownBy(() -> new OracleEnvironment(Map.of("APP_USER", "alice", "APP_USER_PASSWORD", ""), "defaultDb"))
|
||||
.withMessage("No Oracle app password found");
|
||||
}
|
||||
|
||||
@Test
|
||||
void createWhenHasNoPasswordThrowsException() {
|
||||
assertThatIllegalStateException().isThrownBy(() -> new OracleEnvironment(Collections.emptyMap()))
|
||||
assertThatIllegalStateException().isThrownBy(() -> new OracleEnvironment(Collections.emptyMap(), "defaultDb"))
|
||||
.withMessage("No Oracle password found");
|
||||
}
|
||||
|
||||
@Test
|
||||
void createWhenHasEmptyPasswordThrowsException() {
|
||||
assertThatIllegalStateException().isThrownBy(() -> new OracleEnvironment(Map.of("ORACLE_PASSWORD", "")))
|
||||
assertThatIllegalStateException()
|
||||
.isThrownBy(() -> new OracleEnvironment(Map.of("ORACLE_PASSWORD", ""), "defaultDb"))
|
||||
.withMessage("No Oracle password found");
|
||||
}
|
||||
|
||||
@Test
|
||||
void getDatabaseWhenHasNoOracleDatabase() {
|
||||
OracleEnvironment environment = new OracleEnvironment(Map.of("ORACLE_PASSWORD", "secret"));
|
||||
assertThat(environment.getDatabase()).isEqualTo("xepdb1");
|
||||
OracleEnvironment environment = new OracleEnvironment(Map.of("ORACLE_PASSWORD", "secret"), "defaultDb");
|
||||
assertThat(environment.getDatabase()).isEqualTo("defaultDb");
|
||||
}
|
||||
|
||||
@Test
|
||||
void getDatabaseWhenHasOracleDatabase() {
|
||||
OracleEnvironment environment = new OracleEnvironment(
|
||||
Map.of("ORACLE_PASSWORD", "secret", "ORACLE_DATABASE", "db"));
|
||||
Map.of("ORACLE_PASSWORD", "secret", "ORACLE_DATABASE", "db"), "defaultDb");
|
||||
assertThat(environment.getDatabase()).isEqualTo("db");
|
||||
}
|
||||
|
||||
|
||||
@@ -35,7 +35,7 @@ import org.springframework.util.ClassUtils;
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
|
||||
/**
|
||||
* Integration tests for {@link OracleJdbcDockerComposeConnectionDetailsFactory}
|
||||
* Integration tests for {@link OracleFreeJdbcDockerComposeConnectionDetailsFactory}
|
||||
*
|
||||
* @author Andy Wilkinson
|
||||
*/
|
||||
@@ -54,7 +54,7 @@ class OracleFreeJdbcDockerComposeConnectionDetailsFactoryIntegrationTests
|
||||
JdbcConnectionDetails connectionDetails = run(JdbcConnectionDetails.class);
|
||||
assertThat(connectionDetails.getUsername()).isEqualTo("app_user");
|
||||
assertThat(connectionDetails.getPassword()).isEqualTo("app_user_secret");
|
||||
assertThat(connectionDetails.getJdbcUrl()).startsWith("jdbc:oracle:thin:@").endsWith("/xepdb1");
|
||||
assertThat(connectionDetails.getJdbcUrl()).startsWith("jdbc:oracle:thin:@").endsWith("/freepdb1");
|
||||
SimpleDriverDataSource dataSource = new SimpleDriverDataSource();
|
||||
dataSource.setUrl(connectionDetails.getJdbcUrl());
|
||||
dataSource.setUsername(connectionDetails.getUsername());
|
||||
|
||||
@@ -34,7 +34,7 @@ import org.springframework.r2dbc.core.DatabaseClient;
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
|
||||
/**
|
||||
* Integration tests for {@link OracleR2dbcDockerComposeConnectionDetailsFactory}
|
||||
* Integration tests for {@link OracleFreeR2dbcDockerComposeConnectionDetailsFactory}
|
||||
*
|
||||
* @author Andy Wilkinson
|
||||
*/
|
||||
@@ -51,7 +51,7 @@ class OracleFreeR2dbcDockerComposeConnectionDetailsFactoryIntegrationTests
|
||||
void runCreatesConnectionDetailsThatCanBeUsedToAccessDatabase() {
|
||||
R2dbcConnectionDetails connectionDetails = run(R2dbcConnectionDetails.class);
|
||||
ConnectionFactoryOptions connectionFactoryOptions = connectionDetails.getConnectionFactoryOptions();
|
||||
assertThat(connectionFactoryOptions.toString()).contains("database=xepdb1", "driver=oracle",
|
||||
assertThat(connectionFactoryOptions.toString()).contains("database=freepdb1", "driver=oracle",
|
||||
"password=REDACTED", "user=app_user");
|
||||
assertThat(connectionFactoryOptions.getRequiredValue(ConnectionFactoryOptions.PASSWORD))
|
||||
.isEqualTo("app_user_secret");
|
||||
|
||||
@@ -35,7 +35,7 @@ import org.springframework.util.ClassUtils;
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
|
||||
/**
|
||||
* Integration tests for {@link OracleJdbcDockerComposeConnectionDetailsFactory}
|
||||
* Integration tests for {@link OracleXeJdbcDockerComposeConnectionDetailsFactory}
|
||||
*
|
||||
* @author Andy Wilkinson
|
||||
*/
|
||||
|
||||
@@ -34,7 +34,7 @@ import org.springframework.r2dbc.core.DatabaseClient;
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
|
||||
/**
|
||||
* Integration tests for {@link OracleR2dbcDockerComposeConnectionDetailsFactory}
|
||||
* Integration tests for {@link OracleXeR2dbcDockerComposeConnectionDetailsFactory}
|
||||
*
|
||||
* @author Andy Wilkinson
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user