From 39ee9b56e2b334e395579a88e806fa74598d4c38 Mon Sep 17 00:00:00 2001 From: Oliver Gierke Date: Tue, 5 Nov 2013 17:28:59 +0100 Subject: [PATCH] DATAMONGO-793 - Adapt test cases to new initialization model of repositories. Moved tests for nested repositories to a separate package to prevent initialization of repositories that are not meant to be instantiated actually. --- ...tedMongoRepositoriesRepositoryConfigTests.java | 6 +++--- .../lazy}/ClassWithNestedRepository.java | 7 +++++-- .../NestedMongoRepositoriesJavaConfigTests.java | 8 ++++---- .../MongoRepositoryFactoryBeanUnitTests.java | 15 +++++---------- ...oRepositoriesRepositoryConfigTests-context.xml | 3 ++- 5 files changed, 19 insertions(+), 20 deletions(-) rename spring-data-mongodb/src/test/java/org/springframework/data/mongodb/repository/config/{ => lazy}/AllowNestedMongoRepositoriesRepositoryConfigTests.java (83%) rename spring-data-mongodb/src/test/java/org/springframework/data/mongodb/repository/{ => config/lazy}/ClassWithNestedRepository.java (73%) rename spring-data-mongodb/src/test/java/org/springframework/data/mongodb/repository/config/{ => lazy}/NestedMongoRepositoriesJavaConfigTests.java (83%) rename spring-data-mongodb/src/test/resources/org/springframework/data/mongodb/repository/config/{ => lazy}/AllowNestedMongoRepositoriesRepositoryConfigTests-context.xml (93%) diff --git a/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/repository/config/AllowNestedMongoRepositoriesRepositoryConfigTests.java b/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/repository/config/lazy/AllowNestedMongoRepositoriesRepositoryConfigTests.java similarity index 83% rename from spring-data-mongodb/src/test/java/org/springframework/data/mongodb/repository/config/AllowNestedMongoRepositoriesRepositoryConfigTests.java rename to spring-data-mongodb/src/test/java/org/springframework/data/mongodb/repository/config/lazy/AllowNestedMongoRepositoriesRepositoryConfigTests.java index 34696af7d..bb4f61d8e 100644 --- a/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/repository/config/AllowNestedMongoRepositoriesRepositoryConfigTests.java +++ b/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/repository/config/lazy/AllowNestedMongoRepositoriesRepositoryConfigTests.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.springframework.data.mongodb.repository.config; +package org.springframework.data.mongodb.repository.config.lazy; import static org.hamcrest.CoreMatchers.*; import static org.junit.Assert.*; @@ -21,7 +21,7 @@ import static org.junit.Assert.*; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.data.mongodb.repository.ClassWithNestedRepository.NestedUserRepository; +import org.springframework.data.mongodb.repository.config.lazy.ClassWithNestedRepository.NestedUserRepository; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; @@ -31,7 +31,7 @@ import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; * @author Thomas Darimont */ @RunWith(SpringJUnit4ClassRunner.class) -@ContextConfiguration(locations = "AllowNestedMongoRepositoriesRepositoryConfigTests-context.xml") +@ContextConfiguration("AllowNestedMongoRepositoriesRepositoryConfigTests-context.xml") public class AllowNestedMongoRepositoriesRepositoryConfigTests { @Autowired NestedUserRepository fooRepository; diff --git a/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/repository/ClassWithNestedRepository.java b/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/repository/config/lazy/ClassWithNestedRepository.java similarity index 73% rename from spring-data-mongodb/src/test/java/org/springframework/data/mongodb/repository/ClassWithNestedRepository.java rename to spring-data-mongodb/src/test/java/org/springframework/data/mongodb/repository/config/lazy/ClassWithNestedRepository.java index b14d58786..fe9b54778 100644 --- a/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/repository/ClassWithNestedRepository.java +++ b/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/repository/config/lazy/ClassWithNestedRepository.java @@ -13,7 +13,10 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.springframework.data.mongodb.repository; +package org.springframework.data.mongodb.repository.config.lazy; + +import org.springframework.data.mongodb.repository.MongoRepository; +import org.springframework.data.mongodb.repository.User; /** * @see DATAMONGO-780 @@ -21,5 +24,5 @@ package org.springframework.data.mongodb.repository; */ public class ClassWithNestedRepository { - public static interface NestedUserRepository extends MongoRepository {} + interface NestedUserRepository extends MongoRepository {} } diff --git a/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/repository/config/NestedMongoRepositoriesJavaConfigTests.java b/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/repository/config/lazy/NestedMongoRepositoriesJavaConfigTests.java similarity index 83% rename from spring-data-mongodb/src/test/java/org/springframework/data/mongodb/repository/config/NestedMongoRepositoriesJavaConfigTests.java rename to spring-data-mongodb/src/test/java/org/springframework/data/mongodb/repository/config/lazy/NestedMongoRepositoriesJavaConfigTests.java index a81b96063..e9713a383 100644 --- a/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/repository/config/NestedMongoRepositoriesJavaConfigTests.java +++ b/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/repository/config/lazy/NestedMongoRepositoriesJavaConfigTests.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.springframework.data.mongodb.repository.config; +package org.springframework.data.mongodb.repository.config.lazy; import static org.hamcrest.CoreMatchers.*; import static org.junit.Assert.*; @@ -23,8 +23,8 @@ import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.ImportResource; -import org.springframework.data.mongodb.repository.ClassWithNestedRepository.NestedUserRepository; -import org.springframework.data.mongodb.repository.PersonRepository; +import org.springframework.data.mongodb.repository.config.EnableMongoRepositories; +import org.springframework.data.mongodb.repository.config.lazy.ClassWithNestedRepository.NestedUserRepository; import org.springframework.data.repository.support.Repositories; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; @@ -39,7 +39,7 @@ import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; public class NestedMongoRepositoriesJavaConfigTests { @Configuration - @EnableMongoRepositories(basePackageClasses = PersonRepository.class, considerNestedRepositories = true) + @EnableMongoRepositories(considerNestedRepositories = true) @ImportResource("classpath:infrastructure.xml") static class Config {} diff --git a/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/repository/support/MongoRepositoryFactoryBeanUnitTests.java b/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/repository/support/MongoRepositoryFactoryBeanUnitTests.java index 9a1cfd41c..473962af7 100644 --- a/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/repository/support/MongoRepositoryFactoryBeanUnitTests.java +++ b/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/repository/support/MongoRepositoryFactoryBeanUnitTests.java @@ -1,5 +1,5 @@ /* - * Copyright 2011-2012 the original author or authors. + * Copyright 2011-2013 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -39,15 +39,9 @@ import org.springframework.test.util.ReflectionTestUtils; @RunWith(MockitoJUnitRunner.class) public class MongoRepositoryFactoryBeanUnitTests { - @Mock - MongoOperations operations; - - @Mock - MongoConverter converter; - - @Mock - @SuppressWarnings("rawtypes") - MappingContext context; + @Mock MongoOperations operations; + @Mock MongoConverter converter; + @Mock @SuppressWarnings("rawtypes") MappingContext context; @Test @SuppressWarnings("rawtypes") @@ -75,6 +69,7 @@ public class MongoRepositoryFactoryBeanUnitTests { when(operations.getConverter()).thenReturn(converter); when(converter.getMappingContext()).thenReturn(context); + factoryBean.setLazyInit(true); factoryBean.setMongoOperations(operations); factoryBean.afterPropertiesSet(); diff --git a/spring-data-mongodb/src/test/resources/org/springframework/data/mongodb/repository/config/AllowNestedMongoRepositoriesRepositoryConfigTests-context.xml b/spring-data-mongodb/src/test/resources/org/springframework/data/mongodb/repository/config/lazy/AllowNestedMongoRepositoriesRepositoryConfigTests-context.xml similarity index 93% rename from spring-data-mongodb/src/test/resources/org/springframework/data/mongodb/repository/config/AllowNestedMongoRepositoriesRepositoryConfigTests-context.xml rename to spring-data-mongodb/src/test/resources/org/springframework/data/mongodb/repository/config/lazy/AllowNestedMongoRepositoriesRepositoryConfigTests-context.xml index 8f5a78896..41002c4d3 100644 --- a/spring-data-mongodb/src/test/resources/org/springframework/data/mongodb/repository/config/AllowNestedMongoRepositoriesRepositoryConfigTests-context.xml +++ b/spring-data-mongodb/src/test/resources/org/springframework/data/mongodb/repository/config/lazy/AllowNestedMongoRepositoriesRepositoryConfigTests-context.xml @@ -11,5 +11,6 @@ - +