Move sealed test to java 17 test module

Change-Id: Ic09d1242ce26511c0989915389bec91633d8de45
diff --git a/src/test/examplesJava17/sealed/Helper.java b/src/test/examplesJava17/sealed/Helper.java
new file mode 100644
index 0000000..eacda06
--- /dev/null
+++ b/src/test/examplesJava17/sealed/Helper.java
@@ -0,0 +1,11 @@
+package sealed;
+
+import com.google.common.collect.ImmutableList;
+import java.util.List;
+
+public class Helper {
+
+  public static List<Class<?>> getSealedClasses() {
+    return ImmutableList.of(Compiler.class, D8Compiler.class, R8Compiler.class, Main.class);
+  }
+}
diff --git a/src/test/java/com/android/tools/r8/desugar/sealed/SealedClassesClasspathTest.java b/src/test/examplesJava17/sealed/SealedClassesClasspathTest.java
similarity index 75%
rename from src/test/java/com/android/tools/r8/desugar/sealed/SealedClassesClasspathTest.java
rename to src/test/examplesJava17/sealed/SealedClassesClasspathTest.java
index 663c241..c1d8e26 100644
--- a/src/test/java/com/android/tools/r8/desugar/sealed/SealedClassesClasspathTest.java
+++ b/src/test/examplesJava17/sealed/SealedClassesClasspathTest.java
@@ -1,14 +1,13 @@
-// Copyright (c) 2022, the R8 project authors. Please see the AUTHORS file
+package sealed; // Copyright (c) 2022, the R8 project authors. Please see the AUTHORS file
+
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-package com.android.tools.r8.desugar.sealed;
-
 import com.android.tools.r8.TestBase;
 import com.android.tools.r8.TestCompilerBuilder;
 import com.android.tools.r8.TestParameters;
 import com.android.tools.r8.TestParametersCollection;
-import com.android.tools.r8.examples.jdk17.Sealed;
+import com.android.tools.r8.TestRuntime.CfVm;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.junit.runners.Parameterized;
@@ -23,13 +22,17 @@
 
   @Parameters(name = "{0}")
   public static TestParametersCollection data() {
-    return getTestParameters().withAllRuntimesAndApiLevels().build();
+    return getTestParameters()
+        .withCfRuntimesStartingFromIncluding(CfVm.JDK17)
+        .withDexRuntimes()
+        .withAllApiLevelsAlsoForCf()
+        .build();
   }
 
   private void runTest(TestCompilerBuilder<?, ?, ?, ?, ?> builder) throws Exception {
     builder
-        .addClasspathFiles(Sealed.jar())
-        .addInnerClasses(getClass())
+        .addClasspathClasses(Helper.getSealedClasses())
+        .addInnerClassesAndStrippedOuter(getClass())
         .setMinApi(parameters)
         .run(parameters.getRuntime(), TestRunner.class)
         .assertSuccessWithOutputLines("Hello, world!");
@@ -43,6 +46,7 @@
 
   @Test
   public void testR8() throws Exception {
+    parameters.assumeR8TestParameters();
     runTest(testForR8(parameters.getBackend()).addKeepMainRule(TestRunner.class));
   }
 
diff --git a/src/test/java/com/android/tools/r8/desugar/sealed/SealedClassesJdk17CompiledTest.java b/src/test/examplesJava17/sealed/SealedClassesJdk17CompiledTest.java
similarity index 79%
rename from src/test/java/com/android/tools/r8/desugar/sealed/SealedClassesJdk17CompiledTest.java
rename to src/test/examplesJava17/sealed/SealedClassesJdk17CompiledTest.java
index c51bb03..6dfc18f 100644
--- a/src/test/java/com/android/tools/r8/desugar/sealed/SealedClassesJdk17CompiledTest.java
+++ b/src/test/examplesJava17/sealed/SealedClassesJdk17CompiledTest.java
@@ -1,9 +1,8 @@
-// Copyright (c) 2020, the R8 project authors. Please see the AUTHORS file
+package sealed; // Copyright (c) 2020, the R8 project authors. Please see the AUTHORS file
+
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-package com.android.tools.r8.desugar.sealed;
-
 import static com.android.tools.r8.utils.codeinspector.Matchers.isPresentAndRenamed;
 import static junit.framework.Assert.assertEquals;
 import static org.hamcrest.MatcherAssert.assertThat;
@@ -14,7 +13,6 @@
 import com.android.tools.r8.TestParameters;
 import com.android.tools.r8.TestRuntime.CfVm;
 import com.android.tools.r8.TestShrinkerBuilder;
-import com.android.tools.r8.examples.jdk17.Sealed;
 import com.android.tools.r8.utils.BooleanUtils;
 import com.android.tools.r8.utils.StringUtils;
 import com.android.tools.r8.utils.codeinspector.ClassSubject;
@@ -51,8 +49,8 @@
     assumeTrue(keepPermittedSubclassesAttribute);
     assumeTrue(parameters.asCfRuntime().isNewerThanOrEqual(CfVm.JDK17));
     testForJvm(parameters)
-        .addRunClasspathFiles(Sealed.jar())
-        .run(parameters.getRuntime(), Sealed.Main.typeName())
+        .addProgramClassesAndInnerClasses(Helper.getSealedClasses())
+        .run(parameters.getRuntime(), Main.class)
         .assertSuccessWithOutput(EXPECTED);
   }
 
@@ -60,8 +58,8 @@
   public void testDesugaring() throws Exception {
     assumeTrue(keepPermittedSubclassesAttribute);
     testForDesugaring(parameters)
-        .addProgramFiles(Sealed.jar())
-        .run(parameters.getRuntime(), Sealed.Main.typeName())
+        .addProgramClassesAndInnerClasses(Helper.getSealedClasses())
+        .run(parameters.getRuntime(), Main.class)
         .applyIf(
             c ->
                 DesugarTestConfiguration.isNotJavac(c)
@@ -71,10 +69,10 @@
   }
 
   private void inspect(CodeInspector inspector) {
-    ClassSubject clazz = inspector.clazz(Sealed.Compiler.typeName());
+    ClassSubject clazz = inspector.clazz(Compiler.class);
     assertThat(clazz, isPresentAndRenamed());
-    ClassSubject sub1 = inspector.clazz(Sealed.R8Compiler.typeName());
-    ClassSubject sub2 = inspector.clazz(Sealed.D8Compiler.typeName());
+    ClassSubject sub1 = inspector.clazz(R8Compiler.class);
+    ClassSubject sub2 = inspector.clazz(D8Compiler.class);
     assertThat(sub1, isPresentAndRenamed());
     assertThat(sub2, isPresentAndRenamed());
     assertEquals(
@@ -88,17 +86,17 @@
   public void testR8() throws Exception {
     parameters.assumeR8TestParameters();
     testForR8(parameters.getBackend())
-        .addProgramFiles(Sealed.jar())
+        .addProgramClassesAndInnerClasses(Helper.getSealedClasses())
         .setMinApi(parameters)
         .applyIf(
             keepPermittedSubclassesAttribute,
             TestShrinkerBuilder::addKeepAttributePermittedSubclasses)
-        .addKeepPermittedSubclasses(Sealed.Compiler.typeName())
-        .addKeepRules("-keep,allowobfuscation class * extends " + Sealed.Compiler.typeName())
-        .addKeepMainRule(Sealed.Main.typeName())
+        .addKeepPermittedSubclasses(Compiler.class)
+        .addKeepRules("-keep,allowobfuscation class * extends sealed.Compiler")
+        .addKeepMainRule(Main.class)
         .compile()
         .inspect(this::inspect)
-        .run(parameters.getRuntime(), Sealed.Main.typeName())
+        .run(parameters.getRuntime(), Main.class)
         .applyIf(
             parameters.isDexRuntime() || parameters.asCfRuntime().isNewerThanOrEqual(CfVm.JDK17),
             r -> r.assertSuccessWithOutput(EXPECTED),
diff --git a/src/test/java/com/android/tools/r8/desugar/sealed/SealedClassesLibraryTest.java b/src/test/examplesJava17/sealed/SealedClassesLibraryTest.java
similarity index 75%
rename from src/test/java/com/android/tools/r8/desugar/sealed/SealedClassesLibraryTest.java
rename to src/test/examplesJava17/sealed/SealedClassesLibraryTest.java
index e94bcec..617ea4e 100644
--- a/src/test/java/com/android/tools/r8/desugar/sealed/SealedClassesLibraryTest.java
+++ b/src/test/examplesJava17/sealed/SealedClassesLibraryTest.java
@@ -1,14 +1,13 @@
-// Copyright (c) 2022, the R8 project authors. Please see the AUTHORS file
+package sealed; // Copyright (c) 2022, the R8 project authors. Please see the AUTHORS file
+
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-package com.android.tools.r8.desugar.sealed;
-
 import com.android.tools.r8.TestBase;
 import com.android.tools.r8.TestCompilerBuilder;
 import com.android.tools.r8.TestParameters;
 import com.android.tools.r8.TestParametersCollection;
-import com.android.tools.r8.examples.jdk17.Sealed;
+import com.android.tools.r8.TestRuntime.CfVm;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.junit.runners.Parameterized;
@@ -23,14 +22,18 @@
 
   @Parameters(name = "{0}")
   public static TestParametersCollection data() {
-    return getTestParameters().withAllRuntimesAndApiLevels().build();
+    return getTestParameters()
+        .withCfRuntimesStartingFromIncluding(CfVm.JDK17)
+        .withDexRuntimes()
+        .withAllApiLevelsAlsoForCf()
+        .build();
   }
 
   private void runTest(TestCompilerBuilder<?, ?, ?, ?, ?> builder) throws Exception {
     builder
         .addDefaultRuntimeLibrary(parameters)
-        .addLibraryFiles(Sealed.jar())
-        .addInnerClasses(getClass())
+        .addLibraryClasses(Helper.getSealedClasses())
+        .addInnerClassesAndStrippedOuter(getClass())
         .setMinApi(parameters)
         .run(parameters.getRuntime(), TestRunner.class)
         .assertSuccessWithOutputLines("Hello, world!");
@@ -44,6 +47,7 @@
 
   @Test
   public void testR8() throws Exception {
+    parameters.assumeR8TestParameters();
     runTest(testForR8(parameters.getBackend()).addKeepMainRule(TestRunner.class));
   }
 
diff --git a/src/test/java/com/android/tools/r8/examples/jdk17/Sealed.java b/src/test/java/com/android/tools/r8/examples/jdk17/Sealed.java
deleted file mode 100644
index 8858316..0000000
--- a/src/test/java/com/android/tools/r8/examples/jdk17/Sealed.java
+++ /dev/null
@@ -1,26 +0,0 @@
-// Copyright (c) 2020, the R8 project authors. Please see the AUTHORS file
-// for details. All rights reserved. Use of this source code is governed by a
-// BSD-style license that can be found in the LICENSE file.
-
-package com.android.tools.r8.examples.jdk17;
-
-import com.android.tools.r8.examples.JavaExampleClassProxy;
-import java.nio.file.Path;
-
-public class Sealed {
-
-  private static final String EXAMPLE_FILE = "examplesJava17/sealed";
-
-  public static final JavaExampleClassProxy Compiler =
-      new JavaExampleClassProxy(EXAMPLE_FILE, "sealed/Compiler");
-  public static final JavaExampleClassProxy R8Compiler =
-      new JavaExampleClassProxy(EXAMPLE_FILE, "sealed/R8Compiler");
-  public static final JavaExampleClassProxy D8Compiler =
-      new JavaExampleClassProxy(EXAMPLE_FILE, "sealed/D8Compiler");
-  public static final JavaExampleClassProxy Main =
-      new JavaExampleClassProxy(EXAMPLE_FILE, "sealed/Main");
-
-  public static Path jar() {
-    return JavaExampleClassProxy.examplesJar(EXAMPLE_FILE);
-  }
-}