Add test for Repositories verifying isPrimary flag.
See #1583. Original pull request: #465.
This commit is contained in:
committed by
Mark Paluch
parent
5d90fb9e6a
commit
54f2d150c5
@@ -56,6 +56,7 @@ import org.springframework.util.ClassUtils;
|
||||
*
|
||||
* @author Oliver Gierke
|
||||
* @author Thomas Darimont
|
||||
* @author Jan Zeppenfeld
|
||||
*/
|
||||
@ExtendWith(MockitoExtension.class)
|
||||
@MockitoSettings(strictness = Strictness.LENIENT)
|
||||
@@ -183,6 +184,28 @@ class RepositoriesUnitTests {
|
||||
});
|
||||
}
|
||||
|
||||
@Test // DATACMNS-1142
|
||||
void keepsPrimaryRepositoryInCaseOfMultipleOnesIfContextIsNotAConfigurableListableBeanFactory() {
|
||||
|
||||
DefaultListableBeanFactory beanFactory = new DefaultListableBeanFactory();
|
||||
beanFactory.registerBeanDefinition("first", getRepositoryBeanDefinition(FirstRepository.class));
|
||||
|
||||
AbstractBeanDefinition definition = getRepositoryBeanDefinition(PrimaryRepository.class);
|
||||
definition.setPrimary(true);
|
||||
|
||||
beanFactory.registerBeanDefinition("primary", definition);
|
||||
beanFactory.registerBeanDefinition("third", getRepositoryBeanDefinition(ThirdRepository.class));
|
||||
|
||||
context = new GenericApplicationContext(beanFactory);
|
||||
context.refresh();
|
||||
|
||||
Repositories repositories = new Repositories(context);
|
||||
|
||||
assertThat(repositories.getRepositoryFor(SomeEntity.class)).hasValueSatisfying(it -> {
|
||||
assertThat(it).isInstanceOf(PrimaryRepository.class);
|
||||
});
|
||||
}
|
||||
|
||||
class Person {}
|
||||
|
||||
class Address {}
|
||||
|
||||
Reference in New Issue
Block a user