Suppress TimeoutException in InvokeTestRunner debug test
Change-Id: Iaef5640448e4b79a66e7fbb508c175a026fe2fee
diff --git a/src/test/java/com/android/tools/r8/examples/ExamplesTestBase.java b/src/test/java/com/android/tools/r8/examples/ExamplesTestBase.java
index 056f1d8..ec29393 100644
--- a/src/test/java/com/android/tools/r8/examples/ExamplesTestBase.java
+++ b/src/test/java/com/android/tools/r8/examples/ExamplesTestBase.java
@@ -3,6 +3,8 @@
// BSD-style license that can be found in the LICENSE file.
package com.android.tools.r8.examples;
+import static org.junit.Assume.assumeFalse;
+
import com.android.tools.r8.R8FullTestBuilder;
import com.android.tools.r8.TestParameters;
import com.android.tools.r8.TestParametersCollection;
@@ -17,6 +19,8 @@
import java.util.Collections;
import java.util.List;
import java.util.function.Consumer;
+import org.apache.harmony.jpda.tests.framework.TestErrorException;
+import org.apache.harmony.jpda.tests.framework.jdwp.exceptions.TimeoutException;
import org.junit.Assume;
import org.junit.Test;
import org.junit.runners.Parameterized.Parameters;
@@ -50,7 +54,16 @@
@Test
public void testDebug() throws Exception {
- runTestDebugComparator();
+ try {
+ runTestDebugComparator();
+ } catch (TestErrorException e) {
+ assumeFalse(isTestDebugKnownToBeFlaky() && e.getCause() instanceof TimeoutException);
+ throw e;
+ }
+ }
+
+ public boolean isTestDebugKnownToBeFlaky() {
+ return false;
}
public abstract String getExpected();
@@ -86,9 +99,8 @@
}
public void runTestDebugComparator() throws Exception {
- Assume.assumeFalse(ToolHelper.isWindows());
- Assume.assumeFalse(
- "Debugging not enabled in 12.0.0", parameters.isDexRuntimeVersion(Version.V12_0_0));
+ assumeFalse(ToolHelper.isWindows());
+ assumeFalse("Debugging not enabled in 12.0.0", parameters.isDexRuntimeVersion(Version.V12_0_0));
Assume.assumeTrue(
"Streaming on Dalvik DEX runtimes has some unknown interference issue",
parameters.isCfRuntime() || parameters.isDexRuntimeVersionNewerThanOrEqual(Version.V6_0_1));
diff --git a/src/test/java/com/android/tools/r8/examples/invoke/InvokeTestRunner.java b/src/test/java/com/android/tools/r8/examples/invoke/InvokeTestRunner.java
index facfb4b..28a5ebb 100644
--- a/src/test/java/com/android/tools/r8/examples/invoke/InvokeTestRunner.java
+++ b/src/test/java/com/android/tools/r8/examples/invoke/InvokeTestRunner.java
@@ -4,12 +4,10 @@
package com.android.tools.r8.examples.invoke;
import com.android.tools.r8.TestParameters;
-import com.android.tools.r8.TestParametersCollection;
import com.android.tools.r8.examples.ExamplesTestBase;
import com.android.tools.r8.utils.StringUtils;
import com.google.common.collect.ImmutableList;
import java.util.List;
-import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runners.Parameterized;
@@ -94,4 +92,9 @@
"519",
"15");
}
+
+ @Override
+ public boolean isTestDebugKnownToBeFlaky() {
+ return true;
+ }
}