Temporarily update test expectations for MainDexWarningsTest
Change-Id: Ia6d778f31f7fbd8aa3de2bf11a9cf3086f3c7eb7
diff --git a/src/test/java/com/android/tools/r8/maindexlist/warnings/MainDexWarningsTest.java b/src/test/java/com/android/tools/r8/maindexlist/warnings/MainDexWarningsTest.java
index bf33b1c..4f5e54a 100644
--- a/src/test/java/com/android/tools/r8/maindexlist/warnings/MainDexWarningsTest.java
+++ b/src/test/java/com/android/tools/r8/maindexlist/warnings/MainDexWarningsTest.java
@@ -10,17 +10,39 @@
import com.android.tools.r8.ForceInline;
import com.android.tools.r8.TestBase;
+import com.android.tools.r8.TestParameters;
+import com.android.tools.r8.TestParametersCollection;
import com.android.tools.r8.utils.AndroidApiLevel;
import com.android.tools.r8.utils.codeinspector.CodeInspector;
import com.google.common.collect.ImmutableList;
import java.util.List;
import org.hamcrest.CoreMatchers;
import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.junit.runners.Parameterized;
+@RunWith(Parameterized.class)
public class MainDexWarningsTest extends TestBase {
- private List<Class<?>> testClasses = ImmutableList.of(Main.class, Static.class, Static2.class);
- private Class<?> mainClass = Main.class;
+ private static final List<Class<?>> testClasses =
+ ImmutableList.of(Main.class, Static.class, Static2.class);
+ private static final List<Class<?>> testClassesWithoutStatic =
+ ImmutableList.of(Main.class, Static2.class);
+ private static final Class<?> mainClass = Main.class;
+
+ private final TestParameters parameters;
+
+ @Parameterized.Parameters(name = "{0}")
+ public static TestParametersCollection data() {
+ return getTestParameters()
+ .withDexRuntimes()
+ .withApiLevelsEndingAtExcluding(apiLevelWithNativeMultiDexSupport())
+ .build();
+ }
+
+ public MainDexWarningsTest(TestParameters parameters) {
+ this.parameters = parameters;
+ }
private void classStaticGone(CodeInspector inspector) {
assertThat(inspector.clazz(Static.class), CoreMatchers.not(isPresent()));
@@ -29,12 +51,13 @@
@Test
public void testNoWarningFromMainDexRules() throws Exception {
- testForR8(Backend.DEX)
+ testForR8(parameters.getBackend())
.setMinApi(AndroidApiLevel.K)
.addProgramClasses(testClasses)
.addKeepMainRule(mainClass)
// Include main dex rule for class Static.
.addMainDexClassRules(Main.class, Static.class)
+ .setMinApi(parameters.getApiLevel())
.compile()
.inspect(this::classStaticGone)
.assertNoMessages();
@@ -42,13 +65,14 @@
@Test
public void testWarningFromManualMainDexList() throws Exception {
- testForR8(Backend.DEX)
+ testForR8(parameters.getBackend())
.setMinApi(AndroidApiLevel.K)
- .addProgramClasses(testClasses)
+ .addProgramClasses(testClassesWithoutStatic)
.addKeepMainRule(mainClass)
// Include explicit main dex entry for class Static.
.addMainDexListClasses(Static.class)
.allowDiagnosticWarningMessages()
+ .setMinApi(parameters.getApiLevel())
.compile()
.inspect(this::classStaticGone)
.assertOnlyWarnings()
@@ -59,15 +83,16 @@
@Test
public void testWarningFromManualMainDexListWithRuleAsWell() throws Exception {
- testForR8(Backend.DEX)
+ testForR8(parameters.getBackend())
.setMinApi(AndroidApiLevel.K)
- .addProgramClasses(testClasses)
+ .addProgramClasses(testClassesWithoutStatic)
.addKeepMainRule(mainClass)
// Include explicit main dex entry for class Static.
.addMainDexListClasses(Main.class, Static.class)
// Include main dex rule for class Static2.
.addMainDexClassRules(Static2.class)
.allowDiagnosticWarningMessages()
+ .setMinApi(parameters.getApiLevel())
.compile()
.inspect(this::classStaticGone)
.assertOnlyWarnings()