Extend ProcessKotlinStdlibTest to process kotlin-stdlib.jar differently.
Bug: 129557890, 129558497
Change-Id: I9f33cb3d55606effefe3fee247a19ed5c5149e79
diff --git a/src/test/java/com/android/tools/r8/kotlin/ProcessKotlinStdlibTest.java b/src/test/java/com/android/tools/r8/kotlin/ProcessKotlinStdlibTest.java
index 904647f..d47e296 100644
--- a/src/test/java/com/android/tools/r8/kotlin/ProcessKotlinStdlibTest.java
+++ b/src/test/java/com/android/tools/r8/kotlin/ProcessKotlinStdlibTest.java
@@ -6,7 +6,10 @@
import com.android.tools.r8.KotlinTestBase;
import com.android.tools.r8.ToolHelper;
import com.android.tools.r8.ToolHelper.KotlinTargetVersion;
+import com.android.tools.r8.utils.InternalOptions;
import java.util.Collection;
+import java.util.function.Consumer;
+import org.junit.Ignore;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runners.Parameterized;
@@ -32,6 +35,14 @@
.compile();
}
+ private void test(Consumer<InternalOptions> optionsConsumer, String... rules) throws Exception {
+ testForR8(backend)
+ .addProgramFiles(ToolHelper.getKotlinStdlibJar())
+ .addOptionsModification(optionsConsumer)
+ .addKeepRules(rules)
+ .compile();
+ }
+
@Test
public void testAsIs() throws Exception {
test("-dontshrink", "-dontoptimize", "-dontobfuscate");
@@ -42,6 +53,17 @@
test("-dontshrink", "-dontoptimize");
}
+ @Ignore("b/129558497")
+ @Test
+ public void testDontShrinkAndDontOptimizeDifferently() throws Exception {
+ test(
+ o -> {
+ o.enableTreeShaking = false;
+ o.enableVerticalClassMerging = false;
+ },
+ "-keep,allowobfuscation class **.*Exception*");
+ }
+
@Test
public void testDontShrinkAndDontObfuscate() throws Exception {
test("-dontshrink", "-dontobfuscate");
@@ -52,6 +74,14 @@
test("-dontshrink");
}
+ @Ignore("b/129557890")
+ @Test
+ public void testDontShrinkDifferently() throws Exception {
+ test(
+ o -> o.enableTreeShaking = false,
+ "-keep,allowobfuscation class **.*Exception*");
+ }
+
@Test
public void testDontOptimize() throws Exception {
test("-dontoptimize");