From 91a40dd66c8597c5d113b09dc5c2220a5a0dea12 Mon Sep 17 00:00:00 2001 From: Alexander Tokarev Date: Thu, 1 Oct 2015 16:11:29 +0300 Subject: [PATCH] Disable unnecessary database initialization If a DataSource class is found in the classpath then EmbeddedDataSourceConfiguration will not be used, so the in-memory database will not be shutdown on application context closing. As a result, unnecessary database initialization may cause subsequent tests to fail, for example see [1]. [1] https://github.com/spring-projects/spring-boot/issues/1712 --- .../autoconfigure/security/SecurityAutoConfigurationTests.java | 2 ++ .../transaction/TransactionAutoConfigurationTests.java | 3 +++ 2 files changed, 5 insertions(+) diff --git a/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/security/SecurityAutoConfigurationTests.java b/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/security/SecurityAutoConfigurationTests.java index 66a89918ee4..26d300c657e 100644 --- a/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/security/SecurityAutoConfigurationTests.java +++ b/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/security/SecurityAutoConfigurationTests.java @@ -298,6 +298,8 @@ public class SecurityAutoConfigurationTests { this.context.setServletContext(new MockServletContext()); EnvironmentTestUtils.addEnvironment(this.context, "spring.datasource.url:jdbc:hsqldb:mem:testsecdb"); + EnvironmentTestUtils.addEnvironment(this.context, + "spring.datasource.initialize:false"); this.context.register(EntityConfiguration.class, PropertyPlaceholderAutoConfiguration.class, DataSourceAutoConfiguration.class, HibernateJpaAutoConfiguration.class, diff --git a/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/transaction/TransactionAutoConfigurationTests.java b/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/transaction/TransactionAutoConfigurationTests.java index 42f4855accf..f9ce763251d 100644 --- a/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/transaction/TransactionAutoConfigurationTests.java +++ b/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/transaction/TransactionAutoConfigurationTests.java @@ -22,6 +22,7 @@ import org.junit.After; import org.junit.Test; import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration; import org.springframework.boot.autoconfigure.jdbc.DataSourceTransactionManagerAutoConfiguration; +import org.springframework.boot.test.EnvironmentTestUtils; import org.springframework.context.annotation.AnnotationConfigApplicationContext; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; @@ -85,6 +86,8 @@ public class TransactionAutoConfigurationTests { AnnotationConfigApplicationContext applicationContext = new AnnotationConfigApplicationContext(); applicationContext.register(configs); applicationContext.register(TransactionAutoConfiguration.class); + EnvironmentTestUtils.addEnvironment(applicationContext, + "spring.datasource.initialize:false"); applicationContext.refresh(); this.context = applicationContext; }