Ignore Tests with Side Effects
It looks like a ContentHandlerFactoryTest marked with @SideEffect is
causing subsequent luni net tests to fail even though those tests pass
on their own.
Change-Id: I60a65d4debe2484624c83ea4709dc6231b0dcb10
diff --git a/tools/utils/CollectAllTests.java b/tools/utils/CollectAllTests.java
index 40c950f..cb109e8 100644
--- a/tools/utils/CollectAllTests.java
+++ b/tools/utils/CollectAllTests.java
@@ -321,6 +321,11 @@
return getAnnotation(testClass, testName, SUPPRESSED_TEST) != null;
}
+ private boolean hasSideEffects(final Class<? extends TestCase> testClass,
+ final String testName) {
+ return getAnnotation(testClass, testName, SIDE_EFFECT) != null;
+ }
+
private boolean isVogarKnownFailure(final Class<? extends TestCase> testClass,
final String testName) {
if (vogarExpectationStore == null) {
@@ -377,6 +382,9 @@
} else if (isSuppressed(test.getClass(), testName)) {
System.out.println("ignoring suppressed test: " + test);
return;
+ } else if (hasSideEffects(test.getClass(), testName)) {
+ System.out.println("ignoring test with side effects: " + test);
+ return;
} else if (isVogarKnownFailure(test.getClass(), testName)) {
System.out.println("ignoring vogar known failure: " + test);
return;
diff --git a/tools/utils/DescriptionGenerator.java b/tools/utils/DescriptionGenerator.java
index 99be6dc..2d58543 100644
--- a/tools/utils/DescriptionGenerator.java
+++ b/tools/utils/DescriptionGenerator.java
@@ -65,6 +65,7 @@
static final String HOST_CONTROLLER = "dalvik.annotation.HostController";
static final String KNOWN_FAILURE = "dalvik.annotation.KnownFailure";
static final String BROKEN_TEST = "dalvik.annotation.BrokenTest";
+ static final String SIDE_EFFECT = "dalvik.annotation.SideEffect";
static final String SUPPRESSED_TEST = "android.test.suitebuilder.annotation.Suppress";
static final String JUNIT_TEST_CASE_CLASS_NAME = "junit.framework.testcase";