|
|
|
@ -51,6 +51,19 @@ public class TestValidation
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Test
|
|
|
|
|
public void validateMissingDS()
|
|
|
|
|
{
|
|
|
|
|
try {
|
|
|
|
|
HikariConfig config = new HikariConfig();
|
|
|
|
|
config.validate();
|
|
|
|
|
Assert.fail();
|
|
|
|
|
}
|
|
|
|
|
catch (IllegalArgumentException ise) {
|
|
|
|
|
Assert.assertTrue(ise.getMessage().contains("dataSource or dataSourceClassName or jdbcUrl is required."));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Test
|
|
|
|
|
public void validateMissingUrl()
|
|
|
|
|
{
|
|
|
|
@ -61,34 +74,35 @@ public class TestValidation
|
|
|
|
|
Assert.fail();
|
|
|
|
|
}
|
|
|
|
|
catch (IllegalArgumentException ise) {
|
|
|
|
|
// pass
|
|
|
|
|
Assert.assertTrue(ise.getMessage().contains("dataSource or dataSourceClassName or jdbcUrl is required."));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Test
|
|
|
|
|
public void validateBadDriver()
|
|
|
|
|
public void validateDriverAndUrl()
|
|
|
|
|
{
|
|
|
|
|
try {
|
|
|
|
|
HikariConfig config = new HikariConfig();
|
|
|
|
|
config.setDriverClassName("invalid");
|
|
|
|
|
config.setDriverClassName("com.zaxxer.hikari.mocks.StubDriver");
|
|
|
|
|
config.setJdbcUrl("jdbc:stub");
|
|
|
|
|
config.validate();
|
|
|
|
|
Assert.fail();
|
|
|
|
|
}
|
|
|
|
|
catch (RuntimeException ise) {
|
|
|
|
|
Assert.assertTrue(ise.getMessage().contains("class of driverClassName "));
|
|
|
|
|
catch (Throwable t) {
|
|
|
|
|
Assert.fail(t.getMessage());
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Test
|
|
|
|
|
public void validateMissingDriverAndDS()
|
|
|
|
|
public void validateBadDriver()
|
|
|
|
|
{
|
|
|
|
|
try {
|
|
|
|
|
HikariConfig config = new HikariConfig();
|
|
|
|
|
config.setDriverClassName("invalid");
|
|
|
|
|
config.validate();
|
|
|
|
|
Assert.fail();
|
|
|
|
|
}
|
|
|
|
|
catch (IllegalArgumentException ise) {
|
|
|
|
|
Assert.assertTrue(ise.getMessage().contains("either dataSource"));
|
|
|
|
|
catch (RuntimeException ise) {
|
|
|
|
|
Assert.assertTrue(ise.getMessage().contains("class of driverClassName "));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -175,44 +189,6 @@ public class TestValidation
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Test
|
|
|
|
|
public void validateBothDriverAndDS()
|
|
|
|
|
{
|
|
|
|
|
try {
|
|
|
|
|
HikariConfig config = new HikariConfig();
|
|
|
|
|
config.setDataSourceClassName("com.zaxxer.hikari.mocks.StubDataSource");
|
|
|
|
|
config.setDriverClassName("com.zaxxer.hikari.mocks.StubDriver");
|
|
|
|
|
config.setJdbcUrl("jdbc:stub");
|
|
|
|
|
config.validate();
|
|
|
|
|
Assert.fail();
|
|
|
|
|
}
|
|
|
|
|
catch (IllegalArgumentException ise) {
|
|
|
|
|
Assert.assertTrue(ise.getMessage().contains("together"));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Test
|
|
|
|
|
public void validateBothDSAndDSName()
|
|
|
|
|
{
|
|
|
|
|
try {
|
|
|
|
|
HikariConfig config = new HikariConfig();
|
|
|
|
|
|
|
|
|
|
ByteArrayOutputStream baos = new ByteArrayOutputStream();
|
|
|
|
|
PrintStream ps = new PrintStream(baos, true);
|
|
|
|
|
TestElf.setSlf4jTargetStream(HikariConfig.class, ps);
|
|
|
|
|
|
|
|
|
|
config.setDataSourceClassName("com.zaxxer.hikari.mocks.StubDataSource");
|
|
|
|
|
config.setDataSource(new StubDataSource());
|
|
|
|
|
config.validate();
|
|
|
|
|
|
|
|
|
|
String s = new String(baos.toByteArray());
|
|
|
|
|
Assert.assertTrue("Expected exception to contain 'using dataSource' but contains *" + s + "*", s.contains("using dataSource"));
|
|
|
|
|
}
|
|
|
|
|
catch (IllegalStateException ise) {
|
|
|
|
|
Assert.fail();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Test
|
|
|
|
|
public void validateInvalidLifetime()
|
|
|
|
|
{
|
|
|
|
|