Ensure that dex-runtimes are specified when setting apilevel
Change-Id: I3d4f8102fc260ed566001ca4f519663118171352
diff --git a/src/test/java/com/android/tools/r8/TestParametersBuilder.java b/src/test/java/com/android/tools/r8/TestParametersBuilder.java
index 6fbb80f..bbcfb65 100644
--- a/src/test/java/com/android/tools/r8/TestParametersBuilder.java
+++ b/src/test/java/com/android/tools/r8/TestParametersBuilder.java
@@ -25,6 +25,7 @@
// Predicate describing which test parameters are applicable to the test.
// Built via the methods found below. Defaults to no applicable parameters, i.e., the emtpy set.
private Predicate<TestParameters> filter = param -> false;
+ private boolean hasDexRuntimeFilter = false;
private TestParametersBuilder() {}
@@ -42,6 +43,7 @@
}
private TestParametersBuilder withDexRuntimeFilter(Predicate<DexVm.Version> predicate) {
+ hasDexRuntimeFilter = true;
return withFilter(
p -> p.isDexRuntime() && predicate.test(p.getRuntime().asDex().getVm().getVersion()));
}
@@ -173,6 +175,7 @@
}
public TestParametersCollection build() {
+ assert !enableApiLevels || hasDexRuntimeFilter;
return new TestParametersCollection(
getAvailableRuntimes()
.flatMap(this::createParameters)