Commit d5a1421b authored by desainidhi99's avatar desainidhi99 Committed by Madhura Bhave

Deprecate EmbeddedDatabaseConnection#HSQL in favor of HSQLDB

See gh-23565
parent 65c7cd43
...@@ -59,7 +59,14 @@ public enum EmbeddedDatabaseConnection { ...@@ -59,7 +59,14 @@ public enum EmbeddedDatabaseConnection {
/** /**
* HSQL Database Connection. * HSQL Database Connection.
*/ */
@Deprecated
HSQL(EmbeddedDatabaseType.HSQL, DatabaseDriver.HSQLDB.getDriverClassName(), "org.hsqldb.jdbcDriver", HSQL(EmbeddedDatabaseType.HSQL, DatabaseDriver.HSQLDB.getDriverClassName(), "org.hsqldb.jdbcDriver",
"jdbc:hsqldb:mem:%s"),
/**
* HSQL Database Connection.
*/
HSQLDB(EmbeddedDatabaseType.HSQL, DatabaseDriver.HSQLDB.getDriverClassName(), "org.hsqldb.jdbcDriver",
"jdbc:hsqldb:mem:%s"); "jdbc:hsqldb:mem:%s");
private final EmbeddedDatabaseType type; private final EmbeddedDatabaseType type;
...@@ -114,8 +121,8 @@ public enum EmbeddedDatabaseConnection { ...@@ -114,8 +121,8 @@ public enum EmbeddedDatabaseConnection {
* @return true if the driver class is one of the embedded types * @return true if the driver class is one of the embedded types
*/ */
public static boolean isEmbedded(String driverClass) { public static boolean isEmbedded(String driverClass) {
return driverClass != null return driverClass != null && (matches(HSQL, driverClass) || matches(H2, driverClass)
&& (matches(HSQL, driverClass) || matches(H2, driverClass) || matches(DERBY, driverClass)); || matches(DERBY, driverClass) || matches(HSQLDB, driverClass));
} }
private static boolean matches(EmbeddedDatabaseConnection candidate, String driverClass) { private static boolean matches(EmbeddedDatabaseConnection candidate, String driverClass) {
......
...@@ -40,21 +40,42 @@ class EmbeddedDatabaseConnectionTests { ...@@ -40,21 +40,42 @@ class EmbeddedDatabaseConnectionTests {
.isEqualTo("jdbc:derby:memory:myderbydb;create=true"); .isEqualTo("jdbc:derby:memory:myderbydb;create=true");
} }
@Deprecated
@Test @Test
void hsqlCustomDatabaseName() { void hsqlCustomDatabaseName() {
assertThat(EmbeddedDatabaseConnection.HSQL.getUrl("myhsql")).isEqualTo("jdbc:hsqldb:mem:myhsql"); assertThat(EmbeddedDatabaseConnection.HSQL.getUrl("myhsql")).isEqualTo("jdbc:hsqldb:mem:myhsql");
} }
@Deprecated
@Test @Test
void getUrlWithNullDatabaseName() { void getUrlWithNullDatabaseName() {
assertThatIllegalArgumentException().isThrownBy(() -> EmbeddedDatabaseConnection.HSQL.getUrl(null)) assertThatIllegalArgumentException().isThrownBy(() -> EmbeddedDatabaseConnection.HSQL.getUrl(null))
.withMessageContaining("DatabaseName must not be empty"); .withMessageContaining("DatabaseName must not be empty");
} }
@Deprecated
@Test @Test
void getUrlWithEmptyDatabaseName() { void getUrlWithEmptyDatabaseName() {
assertThatIllegalArgumentException().isThrownBy(() -> EmbeddedDatabaseConnection.HSQL.getUrl(" ")) assertThatIllegalArgumentException().isThrownBy(() -> EmbeddedDatabaseConnection.HSQL.getUrl(" "))
.withMessageContaining("DatabaseName must not be empty"); .withMessageContaining("DatabaseName must not be empty");
} }
// HSQLDB connection tests added
@Test
void hsqldbCustomDatabaseName() {
assertThat(EmbeddedDatabaseConnection.HSQLDB.getUrl("myhsqldb")).isEqualTo("jdbc:hsqldb:mem:myhsqldb");
}
@Test
void getUrlWithNullDatabaseNameForHsqldb() {
assertThatIllegalArgumentException().isThrownBy(() -> EmbeddedDatabaseConnection.HSQLDB.getUrl(null))
.withMessageContaining("DatabaseName must not be empty");
}
@Test
void getUrlWithEmptyDatabaseNameForHsqldb() {
assertThatIllegalArgumentException().isThrownBy(() -> EmbeddedDatabaseConnection.HSQLDB.getUrl(" "))
.withMessageContaining("DatabaseName must not be empty");
}
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment