Load desugared library config in commandTest

Fix red bots

Change-Id: Iafea3496e401d79f5c6430f6dce92ce5bec19f34
diff --git a/src/main/java/com/android/tools/r8/ir/desugar/desugaredlibrary/specificationconversion/AppForSpecConversion.java b/src/main/java/com/android/tools/r8/ir/desugar/desugaredlibrary/specificationconversion/AppForSpecConversion.java
index a04330e..0df69b0 100644
--- a/src/main/java/com/android/tools/r8/ir/desugar/desugaredlibrary/specificationconversion/AppForSpecConversion.java
+++ b/src/main/java/com/android/tools/r8/ir/desugar/desugaredlibrary/specificationconversion/AppForSpecConversion.java
@@ -16,7 +16,7 @@
 
 public class AppForSpecConversion {
 
-  static DexApplication readAppForTesting(
+  public static DexApplication readAppForTesting(
       Path desugaredJDKLib,
       Path androidLib,
       InternalOptions options,
diff --git a/src/test/java/com/android/tools/r8/CommandTestBase.java b/src/test/java/com/android/tools/r8/CommandTestBase.java
index dcfbeca..733fb9a 100644
--- a/src/test/java/com/android/tools/r8/CommandTestBase.java
+++ b/src/test/java/com/android/tools/r8/CommandTestBase.java
@@ -7,7 +7,12 @@
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.fail;
 
+import com.android.tools.r8.ir.desugar.desugaredlibrary.specificationconversion.AppForSpecConversion;
+import com.android.tools.r8.utils.AndroidApiLevel;
+import com.android.tools.r8.utils.InternalOptions;
+import com.android.tools.r8.utils.Timing;
 import com.google.common.collect.ImmutableList;
+import java.io.IOException;
 import org.junit.Test;
 
 public abstract class CommandTestBase<C extends BaseCompilerCommand> extends TestBase {
@@ -303,6 +308,20 @@
     return parse(handler, prepareArgs(args));
   }
 
+  protected InternalOptions getOptionsWithLoadedDesugaredLibraryConfiguration(
+      C command, boolean libraryCompilation) throws IOException {
+    InternalOptions options = command.getInternalOptions();
+    options.loadMachineDesugaredLibrarySpecification(
+        Timing.empty(),
+        AppForSpecConversion.readAppForTesting(
+            libraryCompilation ? ToolHelper.getDesugarJDKLibs() : null,
+            ToolHelper.getAndroidJar(AndroidApiLevel.R),
+            options,
+            libraryCompilation,
+            Timing.empty()));
+    return options;
+  }
+
   /**
    * Tests in this class are executed for all of D8, R8 and L8. When testing arguments this can add
    * additional required arguments to all tests
diff --git a/src/test/java/com/android/tools/r8/D8CommandTest.java b/src/test/java/com/android/tools/r8/D8CommandTest.java
index 7a8c4e4..78be322 100644
--- a/src/test/java/com/android/tools/r8/D8CommandTest.java
+++ b/src/test/java/com/android/tools/r8/D8CommandTest.java
@@ -26,6 +26,7 @@
 import com.android.tools.r8.utils.AndroidApiLevel;
 import com.android.tools.r8.utils.AndroidApp;
 import com.android.tools.r8.utils.FileUtils;
+import com.android.tools.r8.utils.InternalOptions;
 import com.android.tools.r8.utils.ThreadUtils;
 import com.android.tools.r8.utils.ZipUtils;
 import com.google.common.collect.ImmutableList;
@@ -694,19 +695,15 @@
   }
 
   @Test
-  public void desugaredLibrary() throws CompilationFailedException {
+  public void desugaredLibrary() throws CompilationFailedException, IOException {
     D8Command d8Command =
         parse(
             "--desugared-lib",
             "src/library_desugar/desugar_jdk_libs.json",
             "--lib",
-            ToolHelper.getAndroidJar(AndroidApiLevel.P).toString());
-    assertFalse(
-        d8Command
-            .getInternalOptions()
-            .machineDesugaredLibrarySpecification
-            .getRewriteType()
-            .isEmpty());
+            ToolHelper.getAndroidJar(AndroidApiLevel.R).toString());
+    InternalOptions options = getOptionsWithLoadedDesugaredLibraryConfiguration(d8Command, false);
+    assertFalse(options.machineDesugaredLibrarySpecification.getRewriteType().isEmpty());
   }
 
   @Test
diff --git a/src/test/java/com/android/tools/r8/L8CommandTest.java b/src/test/java/com/android/tools/r8/L8CommandTest.java
index 2e54294..0dac7a3 100644
--- a/src/test/java/com/android/tools/r8/L8CommandTest.java
+++ b/src/test/java/com/android/tools/r8/L8CommandTest.java
@@ -25,6 +25,7 @@
 import com.android.tools.r8.utils.InternalOptions;
 import com.android.tools.r8.utils.ThreadUtils;
 import com.google.common.collect.ImmutableList;
+import java.io.IOException;
 import java.nio.charset.StandardCharsets;
 import java.nio.file.Files;
 import java.nio.file.Path;
@@ -355,19 +356,15 @@
   }
 
   @Test
-  public void desugaredLibrary() throws CompilationFailedException {
+  public void desugaredLibrary() throws CompilationFailedException, IOException {
     L8Command l8Command =
         parse(
             "--desugared-lib",
             ToolHelper.getDesugarLibJsonForTesting().toString(),
             "--lib",
-            ToolHelper.getAndroidJar(AndroidApiLevel.P).toString());
-    assertFalse(
-        l8Command
-            .getInternalOptions()
-            .machineDesugaredLibrarySpecification
-            .getRewriteType()
-            .isEmpty());
+            ToolHelper.getAndroidJar(AndroidApiLevel.R).toString());
+    InternalOptions options = getOptionsWithLoadedDesugaredLibraryConfiguration(l8Command, true);
+    assertFalse(options.machineDesugaredLibrarySpecification.getRewriteType().isEmpty());
   }
 
   private void checkSingleForceAllAssertion(
diff --git a/src/test/java/com/android/tools/r8/R8CommandTest.java b/src/test/java/com/android/tools/r8/R8CommandTest.java
index 536f5bb..d076ec0 100644
--- a/src/test/java/com/android/tools/r8/R8CommandTest.java
+++ b/src/test/java/com/android/tools/r8/R8CommandTest.java
@@ -24,6 +24,7 @@
 import com.android.tools.r8.references.Reference;
 import com.android.tools.r8.utils.AndroidApiLevel;
 import com.android.tools.r8.utils.FileUtils;
+import com.android.tools.r8.utils.InternalOptions;
 import com.android.tools.r8.utils.ThreadUtils;
 import com.android.tools.r8.utils.ZipUtils;
 import com.google.common.collect.ImmutableList;
@@ -825,38 +826,30 @@
   }
 
   @Test
-  public void desugaredLibrary() throws CompilationFailedException {
+  public void desugaredLibrary() throws CompilationFailedException, IOException {
     R8Command r8Command =
         parse(
             "--desugared-lib",
             "src/library_desugar/desugar_jdk_libs.json",
             "--lib",
-            ToolHelper.getAndroidJar(AndroidApiLevel.P).toString());
-    assertFalse(
-        r8Command
-            .getInternalOptions()
-            .machineDesugaredLibrarySpecification
-            .getRewriteType()
-            .isEmpty());
+            ToolHelper.getAndroidJar(AndroidApiLevel.R).toString());
+    InternalOptions options = getOptionsWithLoadedDesugaredLibraryConfiguration(r8Command, false);
+    assertFalse(options.machineDesugaredLibrarySpecification.getRewriteType().isEmpty());
   }
 
   @Test
-  public void desugaredLibraryWithOutputConf() throws CompilationFailedException {
+  public void desugaredLibraryWithOutputConf() throws CompilationFailedException, IOException {
     Path pgout = temp.getRoot().toPath().resolve("pgout.conf");
     R8Command r8Command =
         parse(
             "--desugared-lib",
             "src/library_desugar/desugar_jdk_libs.json",
             "--lib",
-            ToolHelper.getAndroidJar(AndroidApiLevel.P).toString(),
+            ToolHelper.getAndroidJar(AndroidApiLevel.R).toString(),
             "--desugared-lib-pg-conf-output",
             pgout.toString());
-    assertFalse(
-        r8Command
-            .getInternalOptions()
-            .machineDesugaredLibrarySpecification
-            .getRewriteType()
-            .isEmpty());
+    InternalOptions options = getOptionsWithLoadedDesugaredLibraryConfiguration(r8Command, false);
+    assertFalse(options.machineDesugaredLibrarySpecification.getRewriteType().isEmpty());
   }
 
   @Test