@@ -157,6 +157,67 @@ class BeanUtilsKotlinTests {
157
157
assertThat(instance).isEqualTo(ConstructorWithNullablePrimitiveValueClass (null ))
158
158
}
159
159
160
+ @Test
161
+ fun `getParameterNames filters out DefaultConstructorMarker with Foo` () {
162
+ val ctor = BeanUtils .findPrimaryConstructor(Foo ::class .java)!!
163
+ val names = BeanUtils .getParameterNames(ctor)
164
+ assertThat(names).containsExactly(" param1" , " param2" )
165
+ }
166
+
167
+
168
+ @Test
169
+ fun `getParameterNames filters out DefaultConstructorMarker with Bar` () {
170
+ val ctor = BeanUtils .findPrimaryConstructor(Bar ::class .java)!!
171
+ val names = BeanUtils .getParameterNames(ctor)
172
+ assertThat(names).containsExactly(" param1" , " param2" )
173
+ }
174
+
175
+ @Test
176
+ fun `getParameterNames filters out DefaultConstructorMarker with Baz` () {
177
+ val ctor = BeanUtils .findPrimaryConstructor(Baz ::class .java)!!
178
+ val names = BeanUtils .getParameterNames(ctor)
179
+ assertThat(names).containsExactly(" param1" , " param2" )
180
+ }
181
+
182
+ @Test
183
+ fun `getParameterNames filters out DefaultConstructorMarker with Qux` () {
184
+ val ctor = BeanUtils .findPrimaryConstructor(Qux ::class .java)!!
185
+ val names = BeanUtils .getParameterNames(ctor)
186
+ assertThat(names).containsExactly(" param1" , " param2" )
187
+ }
188
+
189
+ @Test
190
+ fun `getParameterNames filters out DefaultConstructorMarker with ConstructorWithValueClass` () {
191
+ val ctor = BeanUtils .findPrimaryConstructor(ConstructorWithValueClass ::class .java)!!
192
+ assertThat(ctor).isNotNull()
193
+ val names = BeanUtils .getParameterNames(ctor)
194
+ assertThat(names).containsExactly(" value" )
195
+ }
196
+
197
+ @Test
198
+ fun `getParameterNames filters out DefaultConstructorMarker with ConstructorWithNullableValueClass` () {
199
+ val ctor = BeanUtils .findPrimaryConstructor(ConstructorWithNullableValueClass ::class .java)!!
200
+ assertThat(ctor).isNotNull()
201
+ val names = BeanUtils .getParameterNames(ctor)
202
+ assertThat(names).containsExactly(" value" )
203
+ }
204
+
205
+ @Test
206
+ fun `getParameterNames filters out DefaultConstructorMarker with ConstructorWithPrimitiveValueClass` () {
207
+ val ctor = BeanUtils .findPrimaryConstructor(ConstructorWithPrimitiveValueClass ::class .java)!!
208
+ assertThat(ctor).isNotNull()
209
+ val names = BeanUtils .getParameterNames(ctor)
210
+ assertThat(names).containsExactly(" value" )
211
+ }
212
+
213
+ @Test
214
+ fun `getParameterNames filters out DefaultConstructorMarker with ConstructorWithNullablePrimitiveValueClass` () {
215
+ val ctor = BeanUtils .findPrimaryConstructor(ConstructorWithNullablePrimitiveValueClass ::class .java)!!
216
+ assertThat(ctor).isNotNull()
217
+ val names = BeanUtils .getParameterNames(ctor)
218
+ assertThat(names).containsExactly(" value" )
219
+ }
220
+
160
221
161
222
class Foo (val param1 : String , val param2 : Int )
162
223
0 commit comments