From bafd788f8994f42a597b94143d3be3b49f583e36 Mon Sep 17 00:00:00 2001 From: Jens Schauder Date: Wed, 7 Mar 2018 11:25:24 +0100 Subject: [PATCH] DATAJPA-1284 - Use generated database names in tests with Java configuration. Use a pseudo-random unique name for the embedded database as recommended in EmbeddedDatabaseBuilder#generateUniqueName for reusable configuration. Original pull request: #257. --- .../support/AbstractAttributeConverterIntegrationTests.java | 3 ++- .../config/JpaRepositoriesRegistrarIntegrationTests.java | 3 ++- .../repository/support/DefaultJpaContextIntegrationTests.java | 4 +++- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/src/test/java/org/springframework/data/jpa/domain/support/AbstractAttributeConverterIntegrationTests.java b/src/test/java/org/springframework/data/jpa/domain/support/AbstractAttributeConverterIntegrationTests.java index 2073bc803..21862f519 100644 --- a/src/test/java/org/springframework/data/jpa/domain/support/AbstractAttributeConverterIntegrationTests.java +++ b/src/test/java/org/springframework/data/jpa/domain/support/AbstractAttributeConverterIntegrationTests.java @@ -35,6 +35,7 @@ import org.springframework.transaction.PlatformTransactionManager; * Base class for integration tests for JPA 2.1 {@link AttributeConverter} integration. * * @author Oliver Gierke + * @author Jens Schauder */ @RunWith(SpringJUnit4ClassRunner.class) public abstract class AbstractAttributeConverterIntegrationTests { @@ -63,7 +64,7 @@ public abstract class AbstractAttributeConverterIntegrationTests { @Bean DataSource dataSource() { - return new EmbeddedDatabaseBuilder().setType(EmbeddedDatabaseType.HSQL).build(); + return new EmbeddedDatabaseBuilder().setType(EmbeddedDatabaseType.HSQL).generateUniqueName(true).build(); } protected abstract String getPackageName(); diff --git a/src/test/java/org/springframework/data/jpa/repository/config/JpaRepositoriesRegistrarIntegrationTests.java b/src/test/java/org/springframework/data/jpa/repository/config/JpaRepositoriesRegistrarIntegrationTests.java index 2bf063618..425b54b54 100644 --- a/src/test/java/org/springframework/data/jpa/repository/config/JpaRepositoriesRegistrarIntegrationTests.java +++ b/src/test/java/org/springframework/data/jpa/repository/config/JpaRepositoriesRegistrarIntegrationTests.java @@ -50,6 +50,7 @@ import org.springframework.util.ClassUtils; * Integration test for {@link JpaRepositoriesRegistrar}. * * @author Oliver Gierke + * @author Jens Schauder */ @RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration @@ -65,7 +66,7 @@ public class JpaRepositoriesRegistrarIntegrationTests { @Bean public DataSource dataSource() { - return new EmbeddedDatabaseBuilder().build(); + return new EmbeddedDatabaseBuilder().generateUniqueName(true).build(); } @Bean diff --git a/src/test/java/org/springframework/data/jpa/repository/support/DefaultJpaContextIntegrationTests.java b/src/test/java/org/springframework/data/jpa/repository/support/DefaultJpaContextIntegrationTests.java index 88dde3cce..92b6ef964 100644 --- a/src/test/java/org/springframework/data/jpa/repository/support/DefaultJpaContextIntegrationTests.java +++ b/src/test/java/org/springframework/data/jpa/repository/support/DefaultJpaContextIntegrationTests.java @@ -57,6 +57,7 @@ import org.springframework.stereotype.Component; * Integration tests for {@link DefaultJpaContext}. * * @author Oliver Gierke + * @author Jens Schauder * @soundtrack Marcus Miller - Papa Was A Rolling Stone (Afrodeezia) */ public class DefaultJpaContextIntegrationTests { @@ -138,7 +139,8 @@ public class DefaultJpaContextIntegrationTests { LocalContainerEntityManagerFactoryBean factoryBean = new LocalContainerEntityManagerFactoryBean(); factoryBean.setPersistenceProvider(HibernateTestUtils.getPersistenceProvider()); - factoryBean.setDataSource(new EmbeddedDatabaseBuilder().setType(EmbeddedDatabaseType.HSQL).build()); + factoryBean.setDataSource( + new EmbeddedDatabaseBuilder().setType(EmbeddedDatabaseType.HSQL).generateUniqueName(true).build()); factoryBean.setPersistenceUnitName(persistenceUnitName); return factoryBean;