< prev index next >

test/langtools/tools/javac/classfiles/attributes/innerclasses/InnerClassesInInnerEnumTest.java

Print this page

        

@@ -1,7 +1,7 @@
 /*
- * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2018, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
  * under the terms of the GNU General Public License version 2 only, as
  * published by the Free Software Foundation.

@@ -29,25 +29,43 @@
  * @modules jdk.compiler/com.sun.tools.javac.api
  *          jdk.compiler/com.sun.tools.javac.main
  *          jdk.jdeps/com.sun.tools.classfile
  * @build toolbox.ToolBox InMemoryFileManager TestResult TestBase
  * @build InnerClassesInInnerClassTestBase InnerClassesTestBase
- * @run main InnerClassesInInnerEnumTest
+ * @run main InnerClassesInInnerEnumTest true
+ * @run main InnerClassesInInnerEnumTest false
  */
 
+import java.util.Arrays;
+import java.util.List;
+
 public class InnerClassesInInnerEnumTest extends InnerClassesInInnerClassTestBase {
 
+    final boolean expectSyntheticClass;
+
+    public InnerClassesInInnerEnumTest(boolean expectSyntheticClass) {
+        this.expectSyntheticClass = expectSyntheticClass;
+    }
+
     public static void main(String[] args) throws TestFailedException {
-        InnerClassesTestBase test = new InnerClassesInInnerEnumTest();
+        boolean expectSyntheticClass = Boolean.parseBoolean(args[0]);
+        InnerClassesTestBase test = new InnerClassesInInnerEnumTest(expectSyntheticClass);
         test.test("InnerClassesSrc$Inner", "Inner", "1");
     }
 
     @Override
     public void setProperties() {
         setOuterOtherModifiers(Modifier.EMPTY, Modifier.STATIC);
         setOuterClassType(ClassType.ENUM);
         setInnerClassType(ClassType.CLASS);
-        setHasSyntheticClass(true);
+        setHasSyntheticClass(expectSyntheticClass);
         setPrefix("Inner {;");
         setSuffix("}");
     }
+
+    @Override
+    protected List<String> getCompileOptions() {
+        return !expectSyntheticClass ?
+                super.getCompileOptions() :
+                Arrays.asList("-source", "10", "-target", "10");
+    }
 }
< prev index next >