27
27
import org .mockito .junit .MockitoJUnitRunner ;
28
28
import org .springframework .beans .factory .config .BeanDefinition ;
29
29
import org .springframework .beans .factory .support .BeanDefinitionRegistry ;
30
+ import org .springframework .beans .factory .support .BeanNameGenerator ;
31
+ import org .springframework .context .annotation .AnnotationBeanNameGenerator ;
30
32
import org .springframework .context .annotation .ComponentScan .Filter ;
31
33
import org .springframework .context .annotation .FilterType ;
32
34
import org .springframework .core .env .StandardEnvironment ;
@@ -64,7 +66,7 @@ public void registersBeanDefinitionForFoundBean() {
64
66
65
67
AnnotationMetadata metadata = new StandardAnnotationMetadata (SampleConfiguration .class , true );
66
68
67
- registrar .registerBeanDefinitions (metadata , registry );
69
+ registrar .registerBeanDefinitions (metadata , registry , null );
68
70
69
71
assertBeanDefinitionRegisteredFor ("myRepository" );
70
72
assertBeanDefinitionRegisteredFor ("composedRepository" );
@@ -78,7 +80,7 @@ public void registersBeanDefinitionWithoutFragmentImplementations() {
78
80
79
81
AnnotationMetadata metadata = new StandardAnnotationMetadata (FragmentExclusionConfiguration .class , true );
80
82
81
- registrar .registerBeanDefinitions (metadata , registry );
83
+ registrar .registerBeanDefinitions (metadata , registry , null );
82
84
83
85
assertBeanDefinitionRegisteredFor ("repositoryWithFragmentExclusion" );
84
86
assertNoBeanDefinitionRegisteredFor ("excludedRepositoryImpl" );
@@ -89,7 +91,7 @@ public void shouldLimitImplementationBasePackages() {
89
91
90
92
AnnotationMetadata metadata = new StandardAnnotationMetadata (LimitsImplementationBasePackages .class , true );
91
93
92
- registrar .registerBeanDefinitions (metadata , registry );
94
+ registrar .registerBeanDefinitions (metadata , registry , null );
93
95
94
96
assertBeanDefinitionRegisteredFor ("personRepository" );
95
97
assertNoBeanDefinitionRegisteredFor ("fragmentImpl" );
@@ -98,17 +100,30 @@ public void shouldLimitImplementationBasePackages() {
98
100
@ Test // DATACMNS-360
99
101
public void registeredProfileRepositoriesIfProfileActivated () {
100
102
101
- StandardAnnotationMetadata metadata = new StandardAnnotationMetadata (SampleConfiguration .class , true );
103
+ AnnotationMetadata metadata = new StandardAnnotationMetadata (SampleConfiguration .class , true );
102
104
environment .setActiveProfiles ("profile" );
103
105
104
106
DummyRegistrar registrar = new DummyRegistrar ();
105
107
registrar .setEnvironment (environment );
106
-
107
- registrar .registerBeanDefinitions (metadata , registry );
108
+ registrar .registerBeanDefinitions (metadata , registry , null );
108
109
109
110
assertBeanDefinitionRegisteredFor ("myRepository" , "profileRepository" );
110
111
}
111
112
113
+ @ Test // DATACMNS-1497
114
+ public void usesBeanNameGeneratorProvided () {
115
+
116
+ AnnotationMetadata metadata = new StandardAnnotationMetadata (SampleConfiguration .class , true );
117
+ BeanNameGenerator delegate = new AnnotationBeanNameGenerator ();
118
+
119
+ DummyRegistrar registrar = new DummyRegistrar ();
120
+ registrar .setEnvironment (environment );
121
+ registrar .registerBeanDefinitions (metadata , registry ,
122
+ (definition , registry ) -> delegate .generateBeanName (definition , registry ).concat ("Hello" ));
123
+
124
+ assertBeanDefinitionRegisteredFor ("myRepositoryHello" );
125
+ }
126
+
112
127
private void assertBeanDefinitionRegisteredFor (String ... names ) {
113
128
114
129
for (String name : names ) {
0 commit comments