31 import java.util.EnumSet;
32 import java.util.HashSet;
33 import java.util.List;
34 import java.util.Set;
35
36 /**
37 * @test
38 * @summary Verify that for each group of mutually exclusive predicates defined
39 * in com.oracle.java.testlibrary.Platform one and only one predicate
40 * evaluates to true.
41 * @library /testlibrary
42 * @run main TestMutuallyExclusivePlatformPredicates
43 */
44 public class TestMutuallyExclusivePlatformPredicates {
45 private static enum MethodGroup {
46 ARCH("isARM", "isPPC", "isSparc", "isX86", "isX64"),
47 BITNESS("is32bit", "is64bit"),
48 OS("isLinux", "isSolaris", "isWindows", "isOSX"),
49 VM_TYPE("isClient", "isServer", "isGraal", "isMinimal"),
50 IGNORED("isEmbedded", "isDebugBuild", "shouldSAAttach",
51 "canPtraceAttachLinux", "canAttachOSX");
52
53 public final List<String> methodNames;
54
55 private MethodGroup(String... methodNames) {
56 this.methodNames = Collections.unmodifiableList(
57 Arrays.asList(methodNames));
58 }
59 }
60
61 public static void main(String args[]) {
62 EnumSet<MethodGroup> notIgnoredMethodGroups
63 = EnumSet.complementOf(EnumSet.of(MethodGroup.IGNORED));
64
65 notIgnoredMethodGroups.forEach(
66 TestMutuallyExclusivePlatformPredicates::verifyPredicates);
67
68 TestMutuallyExclusivePlatformPredicates.verifyCoverage();
69 }
70
71 /**
|
31 import java.util.EnumSet;
32 import java.util.HashSet;
33 import java.util.List;
34 import java.util.Set;
35
36 /**
37 * @test
38 * @summary Verify that for each group of mutually exclusive predicates defined
39 * in com.oracle.java.testlibrary.Platform one and only one predicate
40 * evaluates to true.
41 * @library /testlibrary
42 * @run main TestMutuallyExclusivePlatformPredicates
43 */
44 public class TestMutuallyExclusivePlatformPredicates {
45 private static enum MethodGroup {
46 ARCH("isARM", "isPPC", "isSparc", "isX86", "isX64"),
47 BITNESS("is32bit", "is64bit"),
48 OS("isLinux", "isSolaris", "isWindows", "isOSX"),
49 VM_TYPE("isClient", "isServer", "isGraal", "isMinimal"),
50 IGNORED("isEmbedded", "isDebugBuild", "shouldSAAttach",
51 "canPtraceAttachLinux", "canAttachOSX", "isTieredSupported");
52
53 public final List<String> methodNames;
54
55 private MethodGroup(String... methodNames) {
56 this.methodNames = Collections.unmodifiableList(
57 Arrays.asList(methodNames));
58 }
59 }
60
61 public static void main(String args[]) {
62 EnumSet<MethodGroup> notIgnoredMethodGroups
63 = EnumSet.complementOf(EnumSet.of(MethodGroup.IGNORED));
64
65 notIgnoredMethodGroups.forEach(
66 TestMutuallyExclusivePlatformPredicates::verifyPredicates);
67
68 TestMutuallyExclusivePlatformPredicates.verifyCoverage();
69 }
70
71 /**
|