File tree 1 file changed +23
-0
lines changed
src/test/java/org/springframework/data/repository/support
1 file changed +23
-0
lines changed Original file line number Diff line number Diff line change 58
58
*
59
59
* @author Oliver Gierke
60
60
* @author Thomas Darimont
61
+ * @author Jan Zeppenfeld
61
62
*/
62
63
@ ExtendWith (MockitoExtension .class )
63
64
@ MockitoSettings (strictness = Strictness .LENIENT )
@@ -185,6 +186,28 @@ void keepsPrimaryRepositoryInCaseOfMultipleOnes() {
185
186
});
186
187
}
187
188
189
+ @ Test // DATACMNS-1142
190
+ void keepsPrimaryRepositoryInCaseOfMultipleOnesIfContextIsNotAConfigurableListableBeanFactory () {
191
+
192
+ DefaultListableBeanFactory beanFactory = new DefaultListableBeanFactory ();
193
+ beanFactory .registerBeanDefinition ("first" , getRepositoryBeanDefinition (FirstRepository .class ));
194
+
195
+ AbstractBeanDefinition definition = getRepositoryBeanDefinition (PrimaryRepository .class );
196
+ definition .setPrimary (true );
197
+
198
+ beanFactory .registerBeanDefinition ("primary" , definition );
199
+ beanFactory .registerBeanDefinition ("third" , getRepositoryBeanDefinition (ThirdRepository .class ));
200
+
201
+ context = new GenericApplicationContext (beanFactory );
202
+ context .refresh ();
203
+
204
+ Repositories repositories = new Repositories (context );
205
+
206
+ assertThat (repositories .getRepositoryFor (SomeEntity .class )).hasValueSatisfying (it -> {
207
+ assertThat (it ).isInstanceOf (PrimaryRepository .class );
208
+ });
209
+ }
210
+
188
211
class Person {}
189
212
190
213
class Address {}
You can’t perform that action at this time.
0 commit comments