3939import org .junit .Assert ;
4040import org .junit .Test ;
4141
42- import com .oracle .svm .configure .config .ConfigurationMemberKind ;
42+ import com .oracle .svm .configure .config .ConfigurationMemberInfo ;
43+ import com .oracle .svm .configure .config .ConfigurationMemberInfo .ConfigurationMemberAccessibility ;
44+ import com .oracle .svm .configure .config .ConfigurationMemberInfo .ConfigurationMemberDeclaration ;
4345import com .oracle .svm .configure .config .ConfigurationMethod ;
4446import com .oracle .svm .configure .config .ConfigurationSet ;
4547import com .oracle .svm .configure .config .ConfigurationType ;
@@ -125,13 +127,13 @@ public void testConfigDifference() {
125127 }
126128
127129 private static void doTestGeneratedTypeConfig () {
128- TypeMethodsWithFlagsTest typeMethodsWithFlagsTestDeclared = new TypeMethodsWithFlagsTest (ConfigurationMemberKind .DECLARED );
130+ TypeMethodsWithFlagsTest typeMethodsWithFlagsTestDeclared = new TypeMethodsWithFlagsTest (ConfigurationMemberDeclaration .DECLARED );
129131 typeMethodsWithFlagsTestDeclared .doTest ();
130132
131- TypeMethodsWithFlagsTest typeMethodsWithFlagsTestPublic = new TypeMethodsWithFlagsTest (ConfigurationMemberKind .PUBLIC );
133+ TypeMethodsWithFlagsTest typeMethodsWithFlagsTestPublic = new TypeMethodsWithFlagsTest (ConfigurationMemberDeclaration .PUBLIC );
132134 typeMethodsWithFlagsTestPublic .doTest ();
133135
134- TypeMethodsWithFlagsTest typeMethodsWithFlagsTestDeclaredPublic = new TypeMethodsWithFlagsTest (ConfigurationMemberKind .DECLARED_AND_PUBLIC );
136+ TypeMethodsWithFlagsTest typeMethodsWithFlagsTestDeclaredPublic = new TypeMethodsWithFlagsTest (ConfigurationMemberDeclaration .DECLARED_AND_PUBLIC );
135137 typeMethodsWithFlagsTestDeclaredPublic .doTest ();
136138 }
137139
@@ -152,10 +154,12 @@ private static void doTestExpectedMissingTypes(TypeConfiguration typeConfig) {
152154
153155 private static void doTestTypeFlags (TypeConfiguration typeConfig ) {
154156 ConfigurationType flagTestHasDeclaredType = getConfigTypeOrFail (typeConfig , "FlagTestC" );
155- Assert .assertTrue (flagTestHasDeclaredType .haveAllDeclaredClasses () || flagTestHasDeclaredType .haveAllDeclaredFields () || flagTestHasDeclaredType .haveAllDeclaredConstructors ());
157+ Assert .assertTrue (flagTestHasDeclaredType .haveAllDeclaredClasses () || flagTestHasDeclaredType .haveAllDeclaredFields () ||
158+ flagTestHasDeclaredType .getAllDeclaredConstructors () == ConfigurationMemberAccessibility .ACCESSED );
156159
157160 ConfigurationType flagTestHasPublicType = getConfigTypeOrFail (typeConfig , "FlagTestD" );
158- Assert .assertTrue (flagTestHasPublicType .haveAllPublicClasses () || flagTestHasPublicType .haveAllPublicFields () || flagTestHasPublicType .haveAllPublicConstructors ());
161+ Assert .assertTrue (flagTestHasPublicType .haveAllPublicClasses () || flagTestHasPublicType .haveAllPublicFields () ||
162+ flagTestHasPublicType .getAllPublicConstructors () == ConfigurationMemberAccessibility .ACCESSED );
159163 }
160164
161165 private static void doTestFields (TypeConfiguration typeConfig ) {
@@ -226,37 +230,37 @@ class TypeMethodsWithFlagsTest {
226230 static final String INTERNAL_SIGNATURE_ONE = "([Ljava/lang/String;)V" ;
227231 static final String INTERNAL_SIGNATURE_TWO = "([Ljava/lang/String;Ljava/lang/String;)V" ;
228232
229- final ConfigurationMemberKind methodKind ;
233+ final ConfigurationMemberDeclaration methodKind ;
230234
231- final Map <ConfigurationMethod , ConfigurationMemberKind > methodsThatMustExist = new HashMap <>();
232- final Map <ConfigurationMethod , ConfigurationMemberKind > methodsThatMustNotExist = new HashMap <>();
235+ final Map <ConfigurationMethod , ConfigurationMemberDeclaration > methodsThatMustExist = new HashMap <>();
236+ final Map <ConfigurationMethod , ConfigurationMemberDeclaration > methodsThatMustNotExist = new HashMap <>();
233237
234238 final TypeConfiguration previousConfig = new TypeConfiguration ();
235239 final TypeConfiguration currentConfig = new TypeConfiguration ();
236240
237- TypeMethodsWithFlagsTest (ConfigurationMemberKind methodKind ) {
241+ TypeMethodsWithFlagsTest (ConfigurationMemberDeclaration methodKind ) {
238242 this .methodKind = methodKind ;
239243 generateTestMethods ();
240244 populateConfig ();
241245 currentConfig .removeAll (previousConfig );
242246 }
243247
244248 void generateTestMethods () {
245- Map <ConfigurationMethod , ConfigurationMemberKind > targetMap ;
249+ Map <ConfigurationMethod , ConfigurationMemberDeclaration > targetMap ;
246250
247- targetMap = getMethodsMap (ConfigurationMemberKind .DECLARED );
248- targetMap .put (new ConfigurationMethod ("<init>" , INTERNAL_SIGNATURE_ONE ), ConfigurationMemberKind .DECLARED );
249- targetMap .put (new ConfigurationMethod ("testMethodDeclaredSpecificSignature" , INTERNAL_SIGNATURE_ONE ), ConfigurationMemberKind .DECLARED );
250- targetMap .put (new ConfigurationMethod ("testMethodDeclaredMatchesAllSignature" , null ), ConfigurationMemberKind .DECLARED );
251+ targetMap = getMethodsMap (ConfigurationMemberDeclaration .DECLARED );
252+ targetMap .put (new ConfigurationMethod ("<init>" , INTERNAL_SIGNATURE_ONE ), ConfigurationMemberDeclaration .DECLARED );
253+ targetMap .put (new ConfigurationMethod ("testMethodDeclaredSpecificSignature" , INTERNAL_SIGNATURE_ONE ), ConfigurationMemberDeclaration .DECLARED );
254+ targetMap .put (new ConfigurationMethod ("testMethodDeclaredMatchesAllSignature" , null ), ConfigurationMemberDeclaration .DECLARED );
251255
252- targetMap = getMethodsMap (ConfigurationMemberKind .PUBLIC );
253- targetMap .put (new ConfigurationMethod ("<init>" , INTERNAL_SIGNATURE_TWO ), ConfigurationMemberKind .PUBLIC );
254- targetMap .put (new ConfigurationMethod ("testMethodPublicSpecificSignature" , INTERNAL_SIGNATURE_ONE ), ConfigurationMemberKind .PUBLIC );
255- targetMap .put (new ConfigurationMethod ("testMethodPublicMatchesAllSignature" , null ), ConfigurationMemberKind .PUBLIC );
256+ targetMap = getMethodsMap (ConfigurationMemberDeclaration .PUBLIC );
257+ targetMap .put (new ConfigurationMethod ("<init>" , INTERNAL_SIGNATURE_TWO ), ConfigurationMemberDeclaration .PUBLIC );
258+ targetMap .put (new ConfigurationMethod ("testMethodPublicSpecificSignature" , INTERNAL_SIGNATURE_ONE ), ConfigurationMemberDeclaration .PUBLIC );
259+ targetMap .put (new ConfigurationMethod ("testMethodPublicMatchesAllSignature" , null ), ConfigurationMemberDeclaration .PUBLIC );
256260 }
257261
258- Map <ConfigurationMethod , ConfigurationMemberKind > getMethodsMap (ConfigurationMemberKind otherKind ) {
259- if (methodKind .equals (otherKind ) || methodKind .equals (ConfigurationMemberKind .DECLARED_AND_PUBLIC )) {
262+ Map <ConfigurationMethod , ConfigurationMemberDeclaration > getMethodsMap (ConfigurationMemberDeclaration otherKind ) {
263+ if (methodKind .equals (otherKind ) || methodKind .equals (ConfigurationMemberDeclaration .DECLARED_AND_PUBLIC )) {
260264 return methodsThatMustNotExist ;
261265 }
262266 return methodsThatMustExist ;
@@ -268,26 +272,26 @@ void populateConfig() {
268272 previousConfig .add (oldType );
269273
270274 ConfigurationType newType = new ConfigurationType (ConfigurationCondition .alwaysTrue (), getTypeName ());
271- for (Map .Entry <ConfigurationMethod , ConfigurationMemberKind > methodEntry : methodsThatMustExist .entrySet ()) {
275+ for (Map .Entry <ConfigurationMethod , ConfigurationMemberDeclaration > methodEntry : methodsThatMustExist .entrySet ()) {
272276 newType .addMethod (methodEntry .getKey ().getName (), methodEntry .getKey ().getInternalSignature (), methodEntry .getValue ());
273277 }
274- for (Map .Entry <ConfigurationMethod , ConfigurationMemberKind > methodEntry : methodsThatMustNotExist .entrySet ()) {
278+ for (Map .Entry <ConfigurationMethod , ConfigurationMemberDeclaration > methodEntry : methodsThatMustNotExist .entrySet ()) {
275279 newType .addMethod (methodEntry .getKey ().getName (), methodEntry .getKey ().getInternalSignature (), methodEntry .getValue ());
276280 }
277281 currentConfig .add (newType );
278282 }
279283
280284 void setFlags (ConfigurationType config ) {
281- if (methodKind .equals (ConfigurationMemberKind .DECLARED ) || methodKind .equals (ConfigurationMemberKind .DECLARED_AND_PUBLIC )) {
285+ if (methodKind .equals (ConfigurationMemberDeclaration .DECLARED ) || methodKind .equals (ConfigurationMemberDeclaration .DECLARED_AND_PUBLIC )) {
282286 config .setAllDeclaredClasses ();
283- config .setAllDeclaredConstructors ();
284- config .setAllDeclaredMethods ();
287+ config .setAllDeclaredConstructors (ConfigurationMemberAccessibility . ACCESSED );
288+ config .setAllDeclaredMethods (ConfigurationMemberAccessibility . ACCESSED );
285289 config .setAllDeclaredFields ();
286290 }
287- if (methodKind .equals (ConfigurationMemberKind .PUBLIC ) || methodKind .equals (ConfigurationMemberKind .DECLARED_AND_PUBLIC )) {
291+ if (methodKind .equals (ConfigurationMemberDeclaration .PUBLIC ) || methodKind .equals (ConfigurationMemberDeclaration .DECLARED_AND_PUBLIC )) {
288292 config .setAllPublicClasses ();
289- config .setAllPublicConstructors ();
290- config .setAllPublicMethods ();
293+ config .setAllPublicConstructors (ConfigurationMemberAccessibility . ACCESSED );
294+ config .setAllPublicMethods (ConfigurationMemberAccessibility . ACCESSED );
291295 config .setAllPublicFields ();
292296 }
293297 }
@@ -304,13 +308,13 @@ void doTest() {
304308 } else {
305309 Assert .assertNotNull ("Generated configuration type " + name + " does not exist. Has the test code changed?" , configurationType );
306310
307- for (Map .Entry <ConfigurationMethod , ConfigurationMemberKind > methodEntry : methodsThatMustExist .entrySet ()) {
308- ConfigurationMemberKind kind = configurationType .getMethodKindIfPresent (methodEntry .getKey ());
311+ for (Map .Entry <ConfigurationMethod , ConfigurationMemberDeclaration > methodEntry : methodsThatMustExist .entrySet ()) {
312+ ConfigurationMemberDeclaration kind = configurationType .getMethodKindIfPresent (methodEntry .getKey ()). getMemberKind ( );
309313 Assert .assertNotNull ("Method " + methodEntry .getKey () + " unexpectedly NOT found in the new configuration." , kind );
310314 Assert .assertEquals ("Method " + methodEntry .getKey () + " contains a different kind than expected in the new configuration." , kind , methodEntry .getValue ());
311315 }
312- for (Map .Entry <ConfigurationMethod , ConfigurationMemberKind > methodEntry : methodsThatMustNotExist .entrySet ()) {
313- ConfigurationMemberKind kind = configurationType .getMethodKindIfPresent (methodEntry .getKey ());
316+ for (Map .Entry <ConfigurationMethod , ConfigurationMemberDeclaration > methodEntry : methodsThatMustNotExist .entrySet ()) {
317+ ConfigurationMemberInfo kind = configurationType .getMethodKindIfPresent (methodEntry .getKey ());
314318 Assert .assertNull ("Method " + methodEntry .getKey () + " unexpectedly found in the new configuration." , kind );
315319 }
316320 }
0 commit comments