Polish "Apply dependsOn semantic between Liquibase and JPA"
See gh-18673
This commit is contained in:
@@ -71,9 +71,9 @@ import org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean;
|
||||
@ConditionalOnProperty(prefix = "spring.liquibase", name = "enabled", matchIfMissing = true)
|
||||
@Conditional(LiquibaseDataSourceCondition.class)
|
||||
@AutoConfigureAfter({ DataSourceAutoConfiguration.class, HibernateJpaAutoConfiguration.class })
|
||||
@Import({ LiquibaseJdbcOperationsDependsOnPostProcessor.class,
|
||||
LiquibaseNamedParameterJdbcOperationsDependsOnPostProcessor.class,
|
||||
LiquibaseEntityManagerFactoryDependsOnPostProcessor.class })
|
||||
@Import({ LiquibaseEntityManagerFactoryDependsOnPostProcessor.class,
|
||||
LiquibaseJdbcOperationsDependsOnPostProcessor.class,
|
||||
LiquibaseNamedParameterJdbcOperationsDependsOnPostProcessor.class })
|
||||
public class LiquibaseAutoConfiguration {
|
||||
|
||||
@Bean
|
||||
|
||||
@@ -323,16 +323,6 @@ class LiquibaseAutoConfigurationTests {
|
||||
});
|
||||
}
|
||||
|
||||
@Test
|
||||
void userConfigurationJdbcTemplateDependency() {
|
||||
this.contextRunner.withConfiguration(AutoConfigurations.of(JdbcTemplateAutoConfiguration.class))
|
||||
.withUserConfiguration(LiquibaseUserConfiguration.class, EmbeddedDataSourceConfiguration.class)
|
||||
.run((context) -> {
|
||||
BeanDefinition beanDefinition = context.getBeanFactory().getBeanDefinition("jdbcTemplate");
|
||||
assertThat(beanDefinition.getDependsOn()).containsExactly("springLiquibase");
|
||||
});
|
||||
}
|
||||
|
||||
@Test
|
||||
void userConfigurationEntityManagerFactoryDependency() {
|
||||
this.contextRunner.withConfiguration(AutoConfigurations.of(HibernateJpaAutoConfiguration.class))
|
||||
@@ -343,6 +333,16 @@ class LiquibaseAutoConfigurationTests {
|
||||
});
|
||||
}
|
||||
|
||||
@Test
|
||||
void userConfigurationJdbcTemplateDependency() {
|
||||
this.contextRunner.withConfiguration(AutoConfigurations.of(JdbcTemplateAutoConfiguration.class))
|
||||
.withUserConfiguration(LiquibaseUserConfiguration.class, EmbeddedDataSourceConfiguration.class)
|
||||
.run((context) -> {
|
||||
BeanDefinition beanDefinition = context.getBeanFactory().getBeanDefinition("jdbcTemplate");
|
||||
assertThat(beanDefinition.getDependsOn()).containsExactly("springLiquibase");
|
||||
});
|
||||
}
|
||||
|
||||
private ContextConsumer<AssertableApplicationContext> assertLiquibase(Consumer<SpringLiquibase> consumer) {
|
||||
return (context) -> {
|
||||
assertThat(context).hasSingleBean(SpringLiquibase.class);
|
||||
|
||||
Reference in New Issue
Block a user