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 56
56
*
57
57
* @author Oliver Gierke
58
58
* @author Thomas Darimont
59
+ * @author Jan Zeppenfeld
59
60
*/
60
61
@ ExtendWith (MockitoExtension .class )
61
62
@ MockitoSettings (strictness = Strictness .LENIENT )
@@ -183,6 +184,28 @@ void keepsPrimaryRepositoryInCaseOfMultipleOnes() {
183
184
});
184
185
}
185
186
187
+ @ Test // DATACMNS-1142
188
+ void keepsPrimaryRepositoryInCaseOfMultipleOnesIfContextIsNotAConfigurableListableBeanFactory () {
189
+
190
+ DefaultListableBeanFactory beanFactory = new DefaultListableBeanFactory ();
191
+ beanFactory .registerBeanDefinition ("first" , getRepositoryBeanDefinition (FirstRepository .class ));
192
+
193
+ AbstractBeanDefinition definition = getRepositoryBeanDefinition (PrimaryRepository .class );
194
+ definition .setPrimary (true );
195
+
196
+ beanFactory .registerBeanDefinition ("primary" , definition );
197
+ beanFactory .registerBeanDefinition ("third" , getRepositoryBeanDefinition (ThirdRepository .class ));
198
+
199
+ context = new GenericApplicationContext (beanFactory );
200
+ context .refresh ();
201
+
202
+ Repositories repositories = new Repositories (context );
203
+
204
+ assertThat (repositories .getRepositoryFor (SomeEntity .class )).hasValueSatisfying (it -> {
205
+ assertThat (it ).isInstanceOf (PrimaryRepository .class );
206
+ });
207
+ }
208
+
186
209
class Person {}
187
210
188
211
class Address {}
You can’t perform that action at this time.
0 commit comments