Commit 7736cb1d authored by Stephane Nicoll's avatar Stephane Nicoll

Fix test so that it doesn't leave a datasource hanging around

Closes gh-9862
parent 3bc9718c
...@@ -16,16 +16,20 @@ ...@@ -16,16 +16,20 @@
package org.springframework.boot.actuate.endpoint; package org.springframework.boot.actuate.endpoint;
import javax.sql.DataSource;
import liquibase.integration.spring.SpringLiquibase; import liquibase.integration.spring.SpringLiquibase;
import org.junit.Test; import org.junit.Test;
import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.autoconfigure.jdbc.EmbeddedDataSourceConfiguration;
import org.springframework.boot.autoconfigure.liquibase.LiquibaseAutoConfiguration; import org.springframework.boot.autoconfigure.liquibase.LiquibaseAutoConfiguration;
import org.springframework.boot.test.util.EnvironmentTestUtils; import org.springframework.boot.test.util.EnvironmentTestUtils;
import org.springframework.context.annotation.AnnotationConfigApplicationContext; import org.springframework.context.annotation.AnnotationConfigApplicationContext;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Import; import org.springframework.context.annotation.Import;
import org.springframework.jdbc.core.JdbcTemplate;
import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.Assertions.assertThat;
...@@ -50,16 +54,14 @@ public class LiquibaseEndpointTests extends AbstractEndpointTests<LiquibaseEndpo ...@@ -50,16 +54,14 @@ public class LiquibaseEndpointTests extends AbstractEndpointTests<LiquibaseEndpo
public void invokeWithCustomSchema() throws Exception { public void invokeWithCustomSchema() throws Exception {
this.context = new AnnotationConfigApplicationContext(); this.context = new AnnotationConfigApplicationContext();
EnvironmentTestUtils.addEnvironment(this.context, EnvironmentTestUtils.addEnvironment(this.context,
"liquibase.default-schema=CUSTOMSCHEMA", "liquibase.default-schema=CUSTOMSCHEMA");
"spring.datasource.generate-unique-name=true", this.context.register(CustomSchemaConfig.class);
"spring.datasource.schema=classpath:/db/create-custom-schema.sql");
this.context.register(Config.class);
this.context.refresh(); this.context.refresh();
assertThat(getEndpointBean().invoke()).hasSize(1); assertThat(getEndpointBean().invoke()).hasSize(1);
} }
@Configuration @Configuration
@Import({ DataSourceAutoConfiguration.class, LiquibaseAutoConfiguration.class }) @Import({ EmbeddedDataSourceConfiguration.class, LiquibaseAutoConfiguration.class })
public static class Config { public static class Config {
private final SpringLiquibase liquibase; private final SpringLiquibase liquibase;
...@@ -75,4 +77,16 @@ public class LiquibaseEndpointTests extends AbstractEndpointTests<LiquibaseEndpo ...@@ -75,4 +77,16 @@ public class LiquibaseEndpointTests extends AbstractEndpointTests<LiquibaseEndpo
} }
@Configuration
@Import(Config.class)
public static class CustomSchemaConfig {
@Autowired
public void initializeSchema(DataSource dataSource) {
JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
jdbcTemplate.execute("CREATE SCHEMA CUSTOMSCHEMA");
}
}
} }
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