3939 * @author Roman Rodov
4040 * @author Mark Paluch
4141 * @author Christoph Strobl
42+ * @author Pavel Anisimov
4243 */
4344class PreferredConstructorDiscovererUnitTests <P extends PersistentProperty <P >> {
4445
4546 @ Test // DATACMNS-1126
4647 void findsNoArgConstructorForClassWithoutExplicitConstructor () {
4748
48- assertThat ( PreferredConstructorDiscoverer .discover (EntityWithoutConstructor .class )). satisfies ( constructor -> {
49+ var constructor = PreferredConstructorDiscoverer .discover (EntityWithoutConstructor .class );
4950
50- assertThat (constructor ).isNotNull ();
51- assertThat (constructor .isNoArgConstructor ()).isTrue ();
52- assertThat (constructor .isExplicitlyAnnotated ()).isFalse ();
53- });
51+ assertThat (constructor ).isNotNull ();
52+ assertThat (constructor .isNoArgConstructor ()).isTrue ();
53+ assertThat (constructor .isExplicitlyAnnotated ()).isFalse ();
5454 }
5555
5656 @ Test // DATACMNS-1126
5757 void findsNoArgConstructorForClassWithMultipleConstructorsAndNoArgOne () {
5858
59- assertThat ( PreferredConstructorDiscoverer .discover (ClassWithEmptyConstructor .class )). satisfies ( constructor -> {
59+ var constructor = PreferredConstructorDiscoverer .discover (ClassWithEmptyConstructor .class );
6060
61- assertThat (constructor ).isNotNull ();
62- assertThat (constructor .isNoArgConstructor ()).isTrue ();
63- assertThat (constructor .isExplicitlyAnnotated ()).isFalse ();
64- });
61+ assertThat (constructor ).isNotNull ();
62+ assertThat (constructor .isNoArgConstructor ()).isTrue ();
63+ assertThat (constructor .isExplicitlyAnnotated ()).isFalse ();
6564 }
6665
6766 @ Test // DATACMNS-1126
6867 void doesNotThrowExceptionForMultipleConstructorsAndNoNoArgConstructorWithoutAnnotation () {
6968
70- assertThat (PreferredConstructorDiscoverer .discover (ClassWithMultipleConstructorsWithoutEmptyOne .class )).isNull ();
69+ var constructor = PreferredConstructorDiscoverer .discover (ClassWithMultipleConstructorsWithoutEmptyOne .class );
70+
71+ assertThat (constructor ).isNull ();
7172 }
7273
7374 @ Test // DATACMNS-1126
74- @ SuppressWarnings ({ "unchecked" , "rawtypes" })
7575 void usesConstructorWithAnnotationOverEveryOther () {
7676
77- assertThat ( PreferredConstructorDiscoverer . discover ( ClassWithMultipleConstructorsAndAnnotation . class ))
78- .satisfies ( constructor -> {
77+ PreferredConstructor < ClassWithMultipleConstructorsAndAnnotation , P > constructor = PreferredConstructorDiscoverer
78+ .discover ( ClassWithMultipleConstructorsAndAnnotation . class );
7979
80- assertThat (constructor ).isNotNull ();
81- assertThat (constructor .isNoArgConstructor ()).isFalse ();
82- assertThat (constructor .isExplicitlyAnnotated ()).isTrue ();
80+ assertThat (constructor ).isNotNull ();
81+ assertThat (constructor .isNoArgConstructor ()).isFalse ();
82+ assertThat (constructor .isExplicitlyAnnotated ()).isTrue ();
8383
84- assertThat (constructor .hasParameters ()).isTrue ();
84+ assertThat (constructor .hasParameters ()).isTrue ();
8585
86- Iterator <Parameter <Object , P >> parameters = ( Iterator ) constructor .getParameters ().iterator ();
86+ Iterator <Parameter <Object , P >> parameters = constructor .getParameters ().iterator ();
8787
88- Parameter <?, P > parameter = parameters .next ();
89- assertThat (parameter .getType ().getType ()).isEqualTo (Long .class );
90- assertThat (parameters .hasNext ()).isFalse ();
91- });
88+ Parameter <?, P > parameter = parameters .next ();
89+ assertThat (parameter .getType ().getType ()).isEqualTo (Long .class );
90+ assertThat (parameters .hasNext ()).isFalse ();
9291 }
9392
9493 @ Test // DATACMNS-134, DATACMNS-1126
9594 void discoversInnerClassConstructorCorrectly () {
9695
9796 PersistentEntity <Inner , P > entity = new BasicPersistentEntity <>(TypeInformation .of (Inner .class ));
9897
99- assertThat (PreferredConstructorDiscoverer .discover (entity )).satisfies (constructor -> {
98+ var constructor = PreferredConstructorDiscoverer .discover (entity );
99+
100+ assertThat (constructor ).isNotNull ();
100101
101- Parameter <?, P > parameter = constructor .getParameters ().iterator ().next ();
102- assertThat (constructor .isParentParameter (parameter )).isTrue ();
103- });
102+ Parameter <?, P > parameter = constructor .getParameters ().iterator ().next ();
103+ assertThat (constructor .isParentParameter (parameter )).isTrue ();
104104 }
105105
106106 @ Test // DATACMNS-1082, DATACMNS-1126
@@ -109,73 +109,76 @@ void skipsSyntheticConstructor() {
109109 PersistentEntity <SyntheticConstructor , P > entity = new BasicPersistentEntity <>(
110110 TypeInformation .of (SyntheticConstructor .class ));
111111
112- assertThat (PreferredConstructorDiscoverer .discover (entity )).satisfies (constructor -> {
112+ var constructor = PreferredConstructorDiscoverer .discover (entity );
113+ assertThat (constructor ).isNotNull ();
113114
114- var annotation = constructor .getConstructor ().getAnnotation (PersistenceConstructor .class );
115- assertThat (annotation ).isNotNull ();
116- assertThat (constructor .getConstructor ().isSynthetic ()).isFalse ();
117- });
115+ var annotation = constructor .getConstructor ().getAnnotation (PersistenceConstructor .class );
116+ assertThat (annotation ).isNotNull ();
117+ assertThat (constructor .getConstructor ().isSynthetic ()).isFalse ();
118118 }
119119
120120 @ Test // GH-2313
121121 void capturesEnclosingTypeParameterOfNonStaticInnerClass () {
122122
123- assertThat ( PreferredConstructorDiscoverer .discover (NonStaticWithGenericTypeArgUsedInCtor .class )). satisfies ( ctor -> {
123+ var constructor = PreferredConstructorDiscoverer .discover (NonStaticWithGenericTypeArgUsedInCtor .class );
124124
125- assertThat (ctor . getParameters ()). hasSize ( 2 );
126- assertThat (ctor .getParameters (). get ( 0 ). getName ()). isEqualTo ( "this$0" );
127- assertThat (ctor .getParameters ().get (1 ).getName ()).isEqualTo ("value " );
128- } );
125+ assertThat (constructor ). isNotNull ( );
126+ assertThat (constructor .getParameters ()). hasSize ( 2 );
127+ assertThat (constructor .getParameters ().get (0 ).getName ()).isEqualTo ("this$0 " );
128+ assertThat ( constructor . getParameters (). get ( 1 ). getName ()). isEqualTo ( "value" );
129129 }
130130
131131 @ Test // GH-2313
132132 void capturesSuperClassEnclosingTypeParameterOfNonStaticInnerClass () {
133133
134- assertThat (PreferredConstructorDiscoverer .discover (NonStaticInnerWithGenericArgUsedInCtor .class ))
135- .satisfies (ctor -> {
134+ var constructor = PreferredConstructorDiscoverer .discover (NonStaticInnerWithGenericArgUsedInCtor .class );
136135
137- assertThat (ctor . getParameters ()). hasSize ( 2 );
138- assertThat (ctor .getParameters (). get ( 0 ). getName ()). isEqualTo ( "this$0" );
139- assertThat (ctor .getParameters ().get (1 ).getName ()).isEqualTo ("value " );
140- } );
136+ assertThat (constructor ). isNotNull ( );
137+ assertThat (constructor .getParameters ()). hasSize ( 2 );
138+ assertThat (constructor .getParameters ().get (0 ).getName ()).isEqualTo ("this$0 " );
139+ assertThat ( constructor . getParameters (). get ( 1 ). getName ()). isEqualTo ( "value" );
141140 }
142141
143142 @ Test // GH-2332
144143 void detectsMetaAnnotatedValueAnnotation () {
145144
146- assertThat ( PreferredConstructorDiscoverer .discover (ClassWithMetaAnnotatedParameter .class )). satisfies ( ctor -> {
145+ var constructor = PreferredConstructorDiscoverer .discover (ClassWithMetaAnnotatedParameter .class );
147146
148- assertThat (ctor . getParameters (). get ( 0 ). getSpelExpression ()). isEqualTo ( "${hello-world}" );
149- assertThat (ctor .getParameters ().get (0 ).getAnnotations ()).isNotNull ( );
150- } );
147+ assertThat (constructor ). isNotNull ( );
148+ assertThat (constructor .getParameters ().get (0 ).getSpelExpression ()).isEqualTo ( "${hello-world}" );
149+ assertThat ( constructor . getParameters (). get ( 0 ). getAnnotations ()). isNotNull ( );
151150 }
152151
153152 @ Test // GH-2332
154- void detectsCanonicalRecordConstructor () {
153+ void detectsCanonicalRecordConstructorWhenRecordHasSingleArgConstructor () {
155154
156- assertThat ( PreferredConstructorDiscoverer .discover (RecordWithSingleArgConstructor .class )). satisfies ( ctor -> {
155+ var constructor = PreferredConstructorDiscoverer .discover (RecordWithSingleArgConstructor .class );
157156
158- assertThat (ctor .getParameters ()).hasSize (2 );
159- assertThat (ctor .getParameters ().get (0 ).getRawType ()).isEqualTo (Long .class );
160- assertThat (ctor .getParameters ().get (1 ).getRawType ()).isEqualTo (String .class );
161- });
157+ assertThat (constructor ).isNotNull ();
158+ assertThat (constructor .getParameters ()).hasSize (2 );
159+ assertThat (constructor .getParameters ().get (0 ).getRawType ()).isEqualTo (Long .class );
160+ assertThat (constructor .getParameters ().get (1 ).getRawType ()).isEqualTo (String .class );
161+ }
162+
163+ @ Test // GH-2332
164+ void detectsCanonicalRecordConstructorWhenRecordHasNoArgConstructor () {
162165
163- assertThat ( PreferredConstructorDiscoverer .discover (RecordWithNoArgConstructor .class )). satisfies ( ctor -> {
166+ var constructor = PreferredConstructorDiscoverer .discover (RecordWithNoArgConstructor .class );
164167
165- assertThat (ctor . getParameters ()). hasSize ( 2 );
166- assertThat (ctor .getParameters (). get ( 0 ). getRawType ()). isEqualTo ( Long . class );
167- assertThat (ctor .getParameters ().get (1 ).getRawType ()).isEqualTo (String .class );
168- } );
168+ assertThat (constructor ). isNotNull ( );
169+ assertThat (constructor .getParameters ()). hasSize ( 2 );
170+ assertThat (constructor .getParameters ().get (0 ).getRawType ()).isEqualTo (Long .class );
171+ assertThat ( constructor . getParameters (). get ( 1 ). getRawType ()). isEqualTo ( String . class );
169172 }
170173
171174 @ Test // GH-2332
172175 void detectsAnnotatedRecordConstructor () {
173176
174- assertThat ( PreferredConstructorDiscoverer .discover (RecordWithPersistenceCreator .class )). satisfies ( ctor -> {
177+ var constructor = PreferredConstructorDiscoverer .discover (RecordWithPersistenceCreator .class );
175178
176- assertThat (ctor . getParameters ()). hasSize ( 1 );
177- assertThat (ctor .getParameters (). get ( 0 ). getRawType ()). isEqualTo ( String . class );
178- } );
179+ assertThat (constructor ). isNotNull ( );
180+ assertThat (constructor .getParameters ()). hasSize ( 1 );
181+ assertThat ( constructor . getParameters (). get ( 0 ). getRawType ()). isEqualTo ( String . class );
179182 }
180183
181184 static class SyntheticConstructor {
0 commit comments