Fix ProGuard test with androidx keep annotations

Ensure that kotlin-stdlib and JetBrains annotation libraries are
passed once to Kotlin tests using androidx keep annotations and
optimizing with ProGuard.

Bug: b/392865072
Change-Id: Idbfbc407c03a9e528bfa4384159897e89cad17d5
diff --git a/src/test/java/com/android/tools/r8/keepanno/KeepAnnoTestBuilder.java b/src/test/java/com/android/tools/r8/keepanno/KeepAnnoTestBuilder.java
index b4d42d9..282b101 100644
--- a/src/test/java/com/android/tools/r8/keepanno/KeepAnnoTestBuilder.java
+++ b/src/test/java/com/android/tools/r8/keepanno/KeepAnnoTestBuilder.java
@@ -626,7 +626,7 @@
     private final ProguardTestBuilder builder;
     private final List<Consumer<List<String>>> configConsumers = new ArrayList<>();
     private final List<Consumer<List<String>>> extractedRulesConsumers = new ArrayList<>();
-    private final List<String> extractedRules = new ArrayList();
+    private final List<String> extractedRules = new ArrayList<>();
 
     public PGBuilder(
         KeepAnnoParameters params,
@@ -638,11 +638,7 @@
       builder =
           TestBase.testForProguard(KeepAnnoTestUtils.PG_VERSION, temp)
               .applyIf(
-                  keepAnnotationLibrary == ANDROIDX,
-                  b ->
-                      b.addDefaultRuntimeLibrary(parameters())
-                          .addLibraryFiles(
-                              kotlinc.getKotlinStdlibJar(), kotlinc.getKotlinAnnotationJar()))
+                  keepAnnotationLibrary == ANDROIDX, b -> b.addDefaultRuntimeLibrary(parameters()))
               .addProgramFiles(KeepAnnoTestUtils.getKeepAnnoLib(temp, keepAnnotationLibrary))
               .setMinApi(parameters());
     }
diff --git a/src/test/java/com/android/tools/r8/keepanno/androidx/AnnotationPatternAnyRetentionTest.java b/src/test/java/com/android/tools/r8/keepanno/androidx/AnnotationPatternAnyRetentionTest.java
index a9b13e0..d622b64 100644
--- a/src/test/java/com/android/tools/r8/keepanno/androidx/AnnotationPatternAnyRetentionTest.java
+++ b/src/test/java/com/android/tools/r8/keepanno/androidx/AnnotationPatternAnyRetentionTest.java
@@ -13,6 +13,7 @@
 import androidx.annotation.keep.KeepTarget;
 import androidx.annotation.keep.UsedByReflection;
 import androidx.annotation.keep.UsesReflection;
+import com.android.tools.r8.KotlinCompilerTool.KotlinCompilerVersion;
 import com.android.tools.r8.keepanno.KeepAnnoParameters;
 import com.android.tools.r8.keepanno.KeepAnnoTestBase;
 import com.android.tools.r8.utils.StringUtils;
@@ -47,6 +48,12 @@
   public void test() throws Exception {
     testForKeepAnnoAndroidX(parameters)
         .addProgramClasses(getInputClasses())
+        .applyIfPG(
+            b ->
+                b.addProgramFiles(
+                    ImmutableList.of(
+                        KotlinCompilerVersion.latest().getCompiler().getKotlinStdlibJar(),
+                        KotlinCompilerVersion.latest().getCompiler().getKotlinAnnotationJar())))
         .setExcludedOuterClass(getClass())
         .run(TestClass.class)
         .assertSuccessWithOutput(EXPECTED)
diff --git a/src/test/java/com/android/tools/r8/keepanno/androidx/AnnotationPatternClassRetentionTest.java b/src/test/java/com/android/tools/r8/keepanno/androidx/AnnotationPatternClassRetentionTest.java
index 869b1bc..3f72691 100644
--- a/src/test/java/com/android/tools/r8/keepanno/androidx/AnnotationPatternClassRetentionTest.java
+++ b/src/test/java/com/android/tools/r8/keepanno/androidx/AnnotationPatternClassRetentionTest.java
@@ -14,6 +14,7 @@
 import androidx.annotation.keep.KeepTarget;
 import androidx.annotation.keep.UsedByReflection;
 import androidx.annotation.keep.UsesReflection;
+import com.android.tools.r8.KotlinCompilerTool.KotlinCompilerVersion;
 import com.android.tools.r8.keepanno.KeepAnnoParameters;
 import com.android.tools.r8.keepanno.KeepAnnoTestBase;
 import com.android.tools.r8.utils.StringUtils;
@@ -48,6 +49,12 @@
   public void test() throws Exception {
     testForKeepAnnoAndroidX(parameters)
         .addProgramClasses(getInputClasses())
+        .applyIfPG(
+            b ->
+                b.addProgramFiles(
+                    ImmutableList.of(
+                        KotlinCompilerVersion.latest().getCompiler().getKotlinStdlibJar(),
+                        KotlinCompilerVersion.latest().getCompiler().getKotlinAnnotationJar())))
         .setExcludedOuterClass(getClass())
         .run(TestClass.class)
         .assertSuccessWithOutput(EXPECTED)