Delete testutil test sizing infrastructure
It's no longer used and has been defunct in many places for a while. The only
bit of @TestSpec that's still respsected is `supportedOs`.
PiperOrigin-RevId: 377984298
diff --git a/src/test/java/com/google/devtools/build/lib/analysis/AnalysisCachingTest.java b/src/test/java/com/google/devtools/build/lib/analysis/AnalysisCachingTest.java
index c683731..a795c12 100644
--- a/src/test/java/com/google/devtools/build/lib/analysis/AnalysisCachingTest.java
+++ b/src/test/java/com/google/devtools/build/lib/analysis/AnalysisCachingTest.java
@@ -34,10 +34,8 @@
import com.google.devtools.build.lib.events.EventHandler;
import com.google.devtools.build.lib.rules.java.JavaInfo;
import com.google.devtools.build.lib.rules.java.JavaSourceJarsProvider;
-import com.google.devtools.build.lib.testutil.Suite;
import com.google.devtools.build.lib.testutil.TestConstants.InternalTestExecutionMode;
import com.google.devtools.build.lib.testutil.TestRuleClassProvider;
-import com.google.devtools.build.lib.testutil.TestSpec;
import com.google.devtools.common.options.Option;
import com.google.devtools.common.options.OptionDefinition;
import com.google.devtools.common.options.OptionDocumentationCategory;
@@ -53,7 +51,6 @@
import org.junit.runners.JUnit4;
/** Analysis caching tests. */
-@TestSpec(size = Suite.SMALL_TESTS)
@RunWith(JUnit4.class)
public class AnalysisCachingTest extends AnalysisCachingTestBase {
diff --git a/src/test/java/com/google/devtools/build/lib/analysis/AnalysisFailureReportingTest.java b/src/test/java/com/google/devtools/build/lib/analysis/AnalysisFailureReportingTest.java
index 6ac172c..55887a7 100644
--- a/src/test/java/com/google/devtools/build/lib/analysis/AnalysisFailureReportingTest.java
+++ b/src/test/java/com/google/devtools/build/lib/analysis/AnalysisFailureReportingTest.java
@@ -32,8 +32,6 @@
import com.google.devtools.build.lib.server.FailureDetails.FailureDetail;
import com.google.devtools.build.lib.server.FailureDetails.PackageLoading;
import com.google.devtools.build.lib.server.FailureDetails.PackageLoading.Code;
-import com.google.devtools.build.lib.testutil.Suite;
-import com.google.devtools.build.lib.testutil.TestSpec;
import com.google.devtools.build.lib.util.DetailedExitCode;
import com.google.devtools.build.lib.vfs.Path;
import com.google.devtools.build.lib.vfs.PathFragment;
@@ -44,7 +42,6 @@
import org.junit.runners.JUnit4;
/** Analysis failure reporting tests. */
-@TestSpec(size = Suite.SMALL_TESTS)
@RunWith(JUnit4.class)
public class AnalysisFailureReportingTest extends AnalysisTestCase {
private final AnalysisFailureEventCollector collector = new AnalysisFailureEventCollector();
diff --git a/src/test/java/com/google/devtools/build/lib/analysis/BuildViewTest.java b/src/test/java/com/google/devtools/build/lib/analysis/BuildViewTest.java
index 3692817..0310273 100644
--- a/src/test/java/com/google/devtools/build/lib/analysis/BuildViewTest.java
+++ b/src/test/java/com/google/devtools/build/lib/analysis/BuildViewTest.java
@@ -48,10 +48,8 @@
import com.google.devtools.build.lib.pkgcache.LoadingFailureEvent;
import com.google.devtools.build.lib.skyframe.ActionLookupConflictFindingFunction;
import com.google.devtools.build.lib.skyframe.ConfiguredTargetAndData;
-import com.google.devtools.build.lib.testutil.Suite;
import com.google.devtools.build.lib.testutil.TestConstants.InternalTestExecutionMode;
import com.google.devtools.build.lib.testutil.TestRuleClassProvider;
-import com.google.devtools.build.lib.testutil.TestSpec;
import com.google.devtools.build.lib.util.Pair;
import com.google.devtools.build.lib.vfs.Path;
import com.google.devtools.build.lib.vfs.PathFragment;
@@ -72,7 +70,6 @@
/**
* Tests for the {@link BuildView}.
*/
-@TestSpec(size = Suite.SMALL_TESTS)
@RunWith(JUnit4.class)
public class BuildViewTest extends BuildViewTestBase {
@@ -1438,7 +1435,6 @@
}
/** Runs the same test with the Skyframe-based analysis prep. */
- @TestSpec(size = Suite.SMALL_TESTS)
@RunWith(JUnit4.class)
public static class WithSkyframePrepareAnalysis extends BuildViewTest {
@Override
diff --git a/src/test/java/com/google/devtools/build/lib/analysis/ConfigurationsForLateBoundTargetsTest.java b/src/test/java/com/google/devtools/build/lib/analysis/ConfigurationsForLateBoundTargetsTest.java
index 3dd8011..4843d2a 100644
--- a/src/test/java/com/google/devtools/build/lib/analysis/ConfigurationsForLateBoundTargetsTest.java
+++ b/src/test/java/com/google/devtools/build/lib/analysis/ConfigurationsForLateBoundTargetsTest.java
@@ -32,9 +32,7 @@
import com.google.devtools.build.lib.events.EventHandler;
import com.google.devtools.build.lib.packages.Attribute;
import com.google.devtools.build.lib.skyframe.util.SkyframeExecutorTestUtils;
-import com.google.devtools.build.lib.testutil.Suite;
import com.google.devtools.build.lib.testutil.TestRuleClassProvider;
-import com.google.devtools.build.lib.testutil.TestSpec;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -48,7 +46,6 @@
* (ConfiguredTargetFunction is a Skyframe function). And the Skyframe library doesn't know anything
* about latebound attributes. So we need to place these properly under the analysis package.
*/
-@TestSpec(size = Suite.SMALL_TESTS)
@RunWith(JUnit4.class)
public class ConfigurationsForLateBoundTargetsTest extends AnalysisTestCase {
private static final PatchTransition CHANGE_FOO_FLAG_TRANSITION =
diff --git a/src/test/java/com/google/devtools/build/lib/analysis/LabelExpanderTest.java b/src/test/java/com/google/devtools/build/lib/analysis/LabelExpanderTest.java
index c5a103d..6c13799 100644
--- a/src/test/java/com/google/devtools/build/lib/analysis/LabelExpanderTest.java
+++ b/src/test/java/com/google/devtools/build/lib/analysis/LabelExpanderTest.java
@@ -22,8 +22,6 @@
import com.google.devtools.build.lib.analysis.util.BuildViewTestCase;
import com.google.devtools.build.lib.cmdline.Label;
import com.google.devtools.build.lib.cmdline.LabelSyntaxException;
-import com.google.devtools.build.lib.testutil.Suite;
-import com.google.devtools.build.lib.testutil.TestSpec;
import com.google.devtools.build.lib.vfs.PathFragment;
import java.util.Map;
import org.junit.Test;
@@ -31,7 +29,6 @@
import org.junit.runners.JUnit4;
/** Tests for {@link LabelExpander}. */
-@TestSpec(size = Suite.SMALL_TESTS)
@RunWith(JUnit4.class)
public class LabelExpanderTest extends BuildViewTestCase {
/**
diff --git a/src/test/java/com/google/devtools/build/lib/buildtool/ActionListenerIntegrationTest.java b/src/test/java/com/google/devtools/build/lib/buildtool/ActionListenerIntegrationTest.java
index 4d6f112..db8ebe3 100644
--- a/src/test/java/com/google/devtools/build/lib/buildtool/ActionListenerIntegrationTest.java
+++ b/src/test/java/com/google/devtools/build/lib/buildtool/ActionListenerIntegrationTest.java
@@ -32,8 +32,6 @@
import com.google.devtools.build.lib.collect.nestedset.NestedSet;
import com.google.devtools.build.lib.rules.java.JavaInfo;
import com.google.devtools.build.lib.rules.java.JavaRuleOutputJarsProvider;
-import com.google.devtools.build.lib.testutil.Suite;
-import com.google.devtools.build.lib.testutil.TestSpec;
import com.google.devtools.build.lib.util.Fingerprint;
import com.google.devtools.build.lib.vfs.Path;
import com.google.devtools.common.options.OptionsParsingException;
@@ -51,7 +49,6 @@
* Tests the the action_listener/extra_action feature.
* (--experimental_action_listener blaze option)
*/
-@TestSpec(size = Suite.MEDIUM_TESTS)
@RunWith(JUnit4.class)
public class ActionListenerIntegrationTest extends GoogleBuildIntegrationTestCase {
protected final ActionKeyContext actionKeyContext = new ActionKeyContext();
diff --git a/src/test/java/com/google/devtools/build/lib/buildtool/BUILD b/src/test/java/com/google/devtools/build/lib/buildtool/BUILD
index 1c14e9b..c1251d2 100644
--- a/src/test/java/com/google/devtools/build/lib/buildtool/BUILD
+++ b/src/test/java/com/google/devtools/build/lib/buildtool/BUILD
@@ -78,7 +78,6 @@
"//src/main/java/com/google/devtools/common/options",
"//src/main/protobuf:extra_actions_base_java_proto",
"//src/test/java/com/google/devtools/build/lib/buildtool/util",
- "//src/test/java/com/google/devtools/build/lib/testutil",
"//third_party:guava",
"//third_party:junit4",
"//third_party:truth",
@@ -111,7 +110,6 @@
"//src/main/java/com/google/devtools/build/lib:runtime",
"//src/main/java/com/google/devtools/build/lib/vfs",
"//src/test/java/com/google/devtools/build/lib/buildtool/util",
- "//src/test/java/com/google/devtools/build/lib/testutil",
"//third_party:junit4",
"//third_party:truth",
],
@@ -128,7 +126,6 @@
"//src/main/java/com/google/devtools/build/lib/actions",
"//src/main/java/com/google/devtools/build/lib/events",
"//src/test/java/com/google/devtools/build/lib/buildtool/util",
- "//src/test/java/com/google/devtools/build/lib/testutil",
"//src/test/java/com/google/devtools/build/lib/testutil:JunitUtils",
"//third_party:junit4",
"//third_party:truth",
@@ -169,7 +166,6 @@
"//src/main/java/com/google/devtools/build/lib/vfs",
"//src/test/java/com/google/devtools/build/lib/buildtool/util",
"//src/test/java/com/google/devtools/build/lib/packages:testutil",
- "//src/test/java/com/google/devtools/build/lib/testutil",
"//third_party:junit4",
"//third_party:truth",
],
@@ -188,7 +184,6 @@
"//src/main/java/com/google/devtools/build/lib/vfs:pathfragment",
"//src/test/java/com/google/devtools/build/lib/buildtool/util",
"//src/test/java/com/google/devtools/build/lib/packages:testutil",
- "//src/test/java/com/google/devtools/build/lib/testutil",
"//third_party:junit4",
"//third_party:truth",
],
@@ -222,7 +217,6 @@
deps = [
"//src/test/java/com/google/devtools/build/lib/buildtool/util",
"//src/test/java/com/google/devtools/build/lib/packages:testutil",
- "//src/test/java/com/google/devtools/build/lib/testutil",
"//third_party:junit4",
],
)
@@ -238,7 +232,6 @@
"//src/main/java/com/google/devtools/build/lib/vfs",
"//src/test/java/com/google/devtools/build/lib/buildtool/util",
"//src/test/java/com/google/devtools/build/lib/packages:testutil",
- "//src/test/java/com/google/devtools/build/lib/testutil",
"//third_party:guava",
"//third_party:junit4",
"//third_party:truth",
@@ -273,7 +266,6 @@
":IoHookTestCase",
"//src/main/java/com/google/devtools/build/lib/actions",
"//src/main/java/com/google/devtools/build/lib/util",
- "//src/test/java/com/google/devtools/build/lib/testutil",
"//src/test/java/com/google/devtools/build/lib/testutil:TestUtils",
"//third_party:guava",
"//third_party:junit4",
@@ -310,7 +302,6 @@
deps = [
"//src/main/java/com/google/devtools/build/lib/actions",
"//src/test/java/com/google/devtools/build/lib/buildtool/util",
- "//src/test/java/com/google/devtools/build/lib/testutil",
"//third_party:junit4",
],
)
@@ -356,7 +347,6 @@
deps = [
"//src/main/java/com/google/devtools/build/lib/cmdline",
"//src/test/java/com/google/devtools/build/lib/buildtool/util",
- "//src/test/java/com/google/devtools/build/lib/testutil",
"//third_party:junit4",
],
)
@@ -401,7 +391,6 @@
"//src/main/protobuf:failure_details_java_proto",
"//src/test/java/com/google/devtools/build/lib/buildtool/util",
"//src/test/java/com/google/devtools/build/lib/packages:testutil",
- "//src/test/java/com/google/devtools/build/lib/testutil",
"//third_party:guava",
"//third_party:junit4",
"//third_party:truth",
@@ -437,7 +426,6 @@
"//src/main/java/com/google/devtools/build/lib/actions",
"//src/test/java/com/google/devtools/build/lib/buildtool/util",
"//src/test/java/com/google/devtools/build/lib/packages:testutil",
- "//src/test/java/com/google/devtools/build/lib/testutil",
"//third_party:junit4",
"//third_party:truth",
],
@@ -476,7 +464,6 @@
"//src/main/java/com/google/devtools/build/lib/analysis:view_creation_failed_exception",
"//src/test/java/com/google/devtools/build/lib/analysis/util",
"//src/test/java/com/google/devtools/build/lib/buildtool/util",
- "//src/test/java/com/google/devtools/build/lib/testutil",
"//third_party:junit4",
],
)
@@ -495,7 +482,6 @@
"//src/main/java/com/google/devtools/build/lib/vfs:pathfragment",
"//src/test/java/com/google/devtools/build/lib/analysis/util",
"//src/test/java/com/google/devtools/build/lib/buildtool/util",
- "//src/test/java/com/google/devtools/build/lib/testutil",
"//src/test/java/com/google/devtools/build/lib/testutil:JunitUtils",
"//third_party:guava",
"//third_party:junit4",
@@ -544,7 +530,6 @@
"//src/main/java/com/google/devtools/build/lib/vfs",
"//src/test/java/com/google/devtools/build/lib/buildtool/util",
"//src/test/java/com/google/devtools/build/lib/packages:testutil",
- "//src/test/java/com/google/devtools/build/lib/testutil",
"//third_party:guava",
"//third_party:junit4",
"//third_party:truth",
@@ -564,7 +549,6 @@
"//src/main/java/com/google/devtools/build/lib/util/io",
"//src/main/java/com/google/devtools/build/lib/util/io:out-err",
"//src/test/java/com/google/devtools/build/lib/buildtool/util",
- "//src/test/java/com/google/devtools/build/lib/testutil",
"//third_party:guava",
"//third_party:junit4",
"//third_party:truth",
@@ -582,12 +566,10 @@
test_class = "com.google.devtools.build.lib.AllTests",
runtime_deps = ["//src/test/java/com/google/devtools/build/lib:test_runner"],
deps = [
- "//src/main/java/com/google/devtools/build/lib:runtime",
"//src/main/java/com/google/devtools/build/lib/actions",
"//src/main/java/com/google/devtools/build/lib/util/io",
"//src/main/java/com/google/devtools/build/lib/util/io:out-err",
"//src/test/java/com/google/devtools/build/lib/buildtool/util",
- "//src/test/java/com/google/devtools/build/lib/testutil",
"//third_party:junit4",
"//third_party:truth",
],
@@ -630,7 +612,6 @@
"//src/main/java/com/google/devtools/build/lib/vfs",
"//src/main/java/com/google/devtools/build/lib/vfs:pathfragment",
"//src/test/java/com/google/devtools/build/lib/buildtool/util",
- "//src/test/java/com/google/devtools/build/lib/testutil",
],
)
diff --git a/src/test/java/com/google/devtools/build/lib/buildtool/BogusExecutionTimeTest.java b/src/test/java/com/google/devtools/build/lib/buildtool/BogusExecutionTimeTest.java
index ada339a..dbc85f1 100644
--- a/src/test/java/com/google/devtools/build/lib/buildtool/BogusExecutionTimeTest.java
+++ b/src/test/java/com/google/devtools/build/lib/buildtool/BogusExecutionTimeTest.java
@@ -16,8 +16,6 @@
import com.google.devtools.build.lib.buildtool.util.BuildIntegrationTestCase;
import com.google.devtools.build.lib.runtime.BlazeRuntime;
import com.google.devtools.build.lib.testutil.ManualClock;
-import com.google.devtools.build.lib.testutil.Suite;
-import com.google.devtools.build.lib.testutil.TestSpec;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -27,7 +25,6 @@
* Regression test for Blaze crashing when the finishing time of a command is smaller than the
* starting time according to the clock, which cannot be trusted to be non-decreasing in general.
*/
-@TestSpec(size = Suite.MEDIUM_TESTS)
@RunWith(JUnit4.class)
public class BogusExecutionTimeTest extends BuildIntegrationTestCase {
private ManualClock clock;
diff --git a/src/test/java/com/google/devtools/build/lib/buildtool/BuildResultTestCase.java b/src/test/java/com/google/devtools/build/lib/buildtool/BuildResultTestCase.java
index 645c818..1464ba0 100644
--- a/src/test/java/com/google/devtools/build/lib/buildtool/BuildResultTestCase.java
+++ b/src/test/java/com/google/devtools/build/lib/buildtool/BuildResultTestCase.java
@@ -18,8 +18,6 @@
import com.google.devtools.build.lib.actions.BuildFailedException;
import com.google.devtools.build.lib.buildtool.util.GoogleBuildIntegrationTestCase;
-import com.google.devtools.build.lib.testutil.Suite;
-import com.google.devtools.build.lib.testutil.TestSpec;
import com.google.devtools.build.lib.util.io.OutErr;
import com.google.devtools.build.lib.util.io.RecordingOutErr;
import org.junit.Before;
@@ -31,7 +29,6 @@
* Tests correctness of the build summary output produced by
* BuildTool.showBuildResult() method.
*/
-@TestSpec(size = Suite.MEDIUM_TESTS)
public abstract class BuildResultTestCase extends GoogleBuildIntegrationTestCase {
private RecordingOutErr recOutErr = new RecordingOutErr();
diff --git a/src/test/java/com/google/devtools/build/lib/buildtool/CompileAfterOptionChangeTest.java b/src/test/java/com/google/devtools/build/lib/buildtool/CompileAfterOptionChangeTest.java
index ca79aea..39767f1 100644
--- a/src/test/java/com/google/devtools/build/lib/buildtool/CompileAfterOptionChangeTest.java
+++ b/src/test/java/com/google/devtools/build/lib/buildtool/CompileAfterOptionChangeTest.java
@@ -16,8 +16,6 @@
import static com.google.common.truth.Truth.assertThat;
import com.google.devtools.build.lib.buildtool.util.GoogleBuildIntegrationTestCase;
-import com.google.devtools.build.lib.testutil.Suite;
-import com.google.devtools.build.lib.testutil.TestSpec;
import com.google.devtools.build.lib.vfs.Path;
import java.io.IOException;
import org.junit.Test;
@@ -28,7 +26,6 @@
* Test of compilation of involving change command line arguments.
*
*/
-@TestSpec(size = Suite.MEDIUM_TESTS)
@RunWith(JUnit4.class)
public class CompileAfterOptionChangeTest extends GoogleBuildIntegrationTestCase {
diff --git a/src/test/java/com/google/devtools/build/lib/buildtool/CompileOneDependencyIntegrationTest.java b/src/test/java/com/google/devtools/build/lib/buildtool/CompileOneDependencyIntegrationTest.java
index 784d04f..2f9adf3 100644
--- a/src/test/java/com/google/devtools/build/lib/buildtool/CompileOneDependencyIntegrationTest.java
+++ b/src/test/java/com/google/devtools/build/lib/buildtool/CompileOneDependencyIntegrationTest.java
@@ -21,8 +21,6 @@
import com.google.devtools.build.lib.buildtool.util.GoogleBuildIntegrationTestCase;
import com.google.devtools.build.lib.events.EventCollector;
import com.google.devtools.build.lib.events.EventKind;
-import com.google.devtools.build.lib.testutil.Suite;
-import com.google.devtools.build.lib.testutil.TestSpec;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runners.JUnit4;
@@ -31,7 +29,6 @@
* Test the semantics of the compile_one_dependency flag: for each command-line argument (which must
* be a source file path relative to the workspace) rebuild a single target that depends on it.
*/
-@TestSpec(size = Suite.MEDIUM_TESTS)
@RunWith(JUnit4.class)
public class CompileOneDependencyIntegrationTest extends GoogleBuildIntegrationTestCase {
diff --git a/src/test/java/com/google/devtools/build/lib/buildtool/CorruptedActionCacheTest.java b/src/test/java/com/google/devtools/build/lib/buildtool/CorruptedActionCacheTest.java
index 421c85a..f32b821 100644
--- a/src/test/java/com/google/devtools/build/lib/buildtool/CorruptedActionCacheTest.java
+++ b/src/test/java/com/google/devtools/build/lib/buildtool/CorruptedActionCacheTest.java
@@ -17,8 +17,6 @@
import com.google.devtools.build.lib.buildtool.util.BuildIntegrationTestCase;
import com.google.devtools.build.lib.packages.util.MockGenruleSupport;
-import com.google.devtools.build.lib.testutil.Suite;
-import com.google.devtools.build.lib.testutil.TestSpec;
import com.google.devtools.build.lib.util.LoggingUtil;
import com.google.devtools.build.lib.vfs.Path;
import com.google.devtools.build.lib.vfs.UnixGlob;
@@ -29,7 +27,6 @@
/**
* Validates corrupted action cache behavior.
*/
-@TestSpec(size = Suite.MEDIUM_TESTS)
@RunWith(JUnit4.class)
public class CorruptedActionCacheTest extends BuildIntegrationTestCase {
diff --git a/src/test/java/com/google/devtools/build/lib/buildtool/CustomRealFilesystemBuildIntegrationTest.java b/src/test/java/com/google/devtools/build/lib/buildtool/CustomRealFilesystemBuildIntegrationTest.java
index ed50968..6a83221 100644
--- a/src/test/java/com/google/devtools/build/lib/buildtool/CustomRealFilesystemBuildIntegrationTest.java
+++ b/src/test/java/com/google/devtools/build/lib/buildtool/CustomRealFilesystemBuildIntegrationTest.java
@@ -26,8 +26,6 @@
import com.google.devtools.build.lib.server.FailureDetails;
import com.google.devtools.build.lib.skyframe.DetailedException;
import com.google.devtools.build.lib.testutil.MoreAsserts;
-import com.google.devtools.build.lib.testutil.Suite;
-import com.google.devtools.build.lib.testutil.TestSpec;
import com.google.devtools.build.lib.testutil.TestUtils;
import com.google.devtools.build.lib.unix.UnixFileSystem;
import com.google.devtools.build.lib.util.ExitCode;
@@ -58,7 +56,6 @@
* Integration tests with a custom filesystem layer, for faking things like IOExceptions, on top of
* the real unix filesystem (so we can execute actions).
*/
-@TestSpec(size = Suite.MEDIUM_TESTS)
@RunWith(TestParameterInjector.class)
public class CustomRealFilesystemBuildIntegrationTest extends GoogleBuildIntegrationTestCase {
diff --git a/src/test/java/com/google/devtools/build/lib/buildtool/DanglingSymlinkTest.java b/src/test/java/com/google/devtools/build/lib/buildtool/DanglingSymlinkTest.java
index 0fbef96..2390837 100644
--- a/src/test/java/com/google/devtools/build/lib/buildtool/DanglingSymlinkTest.java
+++ b/src/test/java/com/google/devtools/build/lib/buildtool/DanglingSymlinkTest.java
@@ -19,8 +19,6 @@
import com.google.devtools.build.lib.actions.BuildFailedException;
import com.google.devtools.build.lib.buildtool.util.GoogleBuildIntegrationTestCase;
import com.google.devtools.build.lib.packages.util.MockGenruleSupport;
-import com.google.devtools.build.lib.testutil.Suite;
-import com.google.devtools.build.lib.testutil.TestSpec;
import com.google.devtools.build.lib.vfs.Path;
import com.google.devtools.build.lib.vfs.PathFragment;
import org.junit.Before;
@@ -29,7 +27,6 @@
import org.junit.runners.JUnit4;
/** Tests for dangling symlinks. */
-@TestSpec(size = Suite.MEDIUM_TESTS)
@RunWith(JUnit4.class)
public class DanglingSymlinkTest extends GoogleBuildIntegrationTestCase {
diff --git a/src/test/java/com/google/devtools/build/lib/buildtool/DirectoryArtifactWarningTest.java b/src/test/java/com/google/devtools/build/lib/buildtool/DirectoryArtifactWarningTest.java
index eb53eb1..315f727 100644
--- a/src/test/java/com/google/devtools/build/lib/buildtool/DirectoryArtifactWarningTest.java
+++ b/src/test/java/com/google/devtools/build/lib/buildtool/DirectoryArtifactWarningTest.java
@@ -15,8 +15,6 @@
import com.google.devtools.build.lib.buildtool.util.BuildIntegrationTestCase;
import com.google.devtools.build.lib.packages.util.MockGenruleSupport;
-import com.google.devtools.build.lib.testutil.Suite;
-import com.google.devtools.build.lib.testutil.TestSpec;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runners.JUnit4;
@@ -24,7 +22,6 @@
/**
* Integration test for warnings issued when an artifact is a directory.
*/
-@TestSpec(size = Suite.MEDIUM_TESTS)
@RunWith(JUnit4.class)
public class DirectoryArtifactWarningTest extends BuildIntegrationTestCase {
diff --git a/src/test/java/com/google/devtools/build/lib/buildtool/EditDuringBuildTest.java b/src/test/java/com/google/devtools/build/lib/buildtool/EditDuringBuildTest.java
index 4d5d881..5d50579 100644
--- a/src/test/java/com/google/devtools/build/lib/buildtool/EditDuringBuildTest.java
+++ b/src/test/java/com/google/devtools/build/lib/buildtool/EditDuringBuildTest.java
@@ -18,8 +18,6 @@
import com.google.common.collect.Iterables;
import com.google.devtools.build.lib.buildtool.util.BuildIntegrationTestCase;
import com.google.devtools.build.lib.packages.util.MockGenruleSupport;
-import com.google.devtools.build.lib.testutil.Suite;
-import com.google.devtools.build.lib.testutil.TestSpec;
import com.google.devtools.build.lib.vfs.Path;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -39,7 +37,6 @@
* build that is exposed to the problem, and the odds of editing a sourcefile just as it is being
* compiled is much smaller in a clean (long) build than in an incremental (short) build.
*/
-@TestSpec(size = Suite.MEDIUM_TESTS)
@RunWith(JUnit4.class)
public class EditDuringBuildTest extends BuildIntegrationTestCase {
diff --git a/src/test/java/com/google/devtools/build/lib/buildtool/ExecutionPhaseContainingPackageLookupTest.java b/src/test/java/com/google/devtools/build/lib/buildtool/ExecutionPhaseContainingPackageLookupTest.java
index 255ed07..6ec6255 100644
--- a/src/test/java/com/google/devtools/build/lib/buildtool/ExecutionPhaseContainingPackageLookupTest.java
+++ b/src/test/java/com/google/devtools/build/lib/buildtool/ExecutionPhaseContainingPackageLookupTest.java
@@ -18,8 +18,6 @@
import com.google.common.util.concurrent.Futures;
import com.google.devtools.build.lib.actions.BuildFailedException;
-import com.google.devtools.build.lib.testutil.Suite;
-import com.google.devtools.build.lib.testutil.TestSpec;
import com.google.devtools.build.lib.testutil.TestUtils;
import com.google.devtools.build.lib.util.LoggingUtil;
import java.io.IOException;
@@ -41,7 +39,6 @@
* and execution phase (ie: network disconnecting, credentials expiring, etc)</li>
* </ul>
*/
-@TestSpec(size = Suite.MEDIUM_TESTS)
@RunWith(JUnit4.class)
public class ExecutionPhaseContainingPackageLookupTest extends IoHookTestCase {
diff --git a/src/test/java/com/google/devtools/build/lib/buildtool/IncludeValidationTest.java b/src/test/java/com/google/devtools/build/lib/buildtool/IncludeValidationTest.java
index b15caa2..6c1ba86 100644
--- a/src/test/java/com/google/devtools/build/lib/buildtool/IncludeValidationTest.java
+++ b/src/test/java/com/google/devtools/build/lib/buildtool/IncludeValidationTest.java
@@ -17,8 +17,6 @@
import com.google.devtools.build.lib.actions.BuildFailedException;
import com.google.devtools.build.lib.buildtool.util.GoogleBuildIntegrationTestCase;
-import com.google.devtools.build.lib.testutil.Suite;
-import com.google.devtools.build.lib.testutil.TestSpec;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runners.JUnit4;
@@ -27,7 +25,6 @@
* End-to-end or integration test of some of the tricky include validation
* cases, including regressions.
*/
-@TestSpec(size = Suite.MEDIUM_TESTS)
@RunWith(JUnit4.class)
public class IncludeValidationTest extends GoogleBuildIntegrationTestCase {
diff --git a/src/test/java/com/google/devtools/build/lib/buildtool/IoHookTestCase.java b/src/test/java/com/google/devtools/build/lib/buildtool/IoHookTestCase.java
index c1bce9e..d18e734 100644
--- a/src/test/java/com/google/devtools/build/lib/buildtool/IoHookTestCase.java
+++ b/src/test/java/com/google/devtools/build/lib/buildtool/IoHookTestCase.java
@@ -15,8 +15,6 @@
import com.google.devtools.build.lib.buildtool.util.GoogleBuildIntegrationTestCase;
import com.google.devtools.build.lib.skyframe.MutableSupplier;
-import com.google.devtools.build.lib.testutil.Suite;
-import com.google.devtools.build.lib.testutil.TestSpec;
import com.google.devtools.build.lib.unix.UnixFileSystem;
import com.google.devtools.build.lib.vfs.FileStatus;
import com.google.devtools.build.lib.vfs.FileSystem;
@@ -24,7 +22,6 @@
import java.io.IOException;
/** Abstract test class for tests that want to be aware of filesystem operations. */
-@TestSpec(size = Suite.MEDIUM_TESTS)
public abstract class IoHookTestCase extends GoogleBuildIntegrationTestCase {
/** Type of path operation. */
diff --git a/src/test/java/com/google/devtools/build/lib/buildtool/LabelCrossesPackageBoundaryTest.java b/src/test/java/com/google/devtools/build/lib/buildtool/LabelCrossesPackageBoundaryTest.java
index 2d4a809..7dec20a 100644
--- a/src/test/java/com/google/devtools/build/lib/buildtool/LabelCrossesPackageBoundaryTest.java
+++ b/src/test/java/com/google/devtools/build/lib/buildtool/LabelCrossesPackageBoundaryTest.java
@@ -17,8 +17,6 @@
import com.google.devtools.build.lib.buildtool.util.BuildIntegrationTestCase;
import com.google.devtools.build.lib.cmdline.TargetParsingException;
-import com.google.devtools.build.lib.testutil.Suite;
-import com.google.devtools.build.lib.testutil.TestSpec;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runners.JUnit4;
@@ -26,7 +24,6 @@
/**
* Integration test for labels that cross package boundaries.
*/
-@TestSpec(size = Suite.MEDIUM_TESTS)
@RunWith(JUnit4.class)
public class LabelCrossesPackageBoundaryTest extends BuildIntegrationTestCase {
diff --git a/src/test/java/com/google/devtools/build/lib/buildtool/MissingInputActionTest.java b/src/test/java/com/google/devtools/build/lib/buildtool/MissingInputActionTest.java
index d6f5f37..4e4b497 100644
--- a/src/test/java/com/google/devtools/build/lib/buildtool/MissingInputActionTest.java
+++ b/src/test/java/com/google/devtools/build/lib/buildtool/MissingInputActionTest.java
@@ -25,8 +25,6 @@
import com.google.devtools.build.lib.runtime.BlazeModule;
import com.google.devtools.build.lib.server.FailureDetails.Execution.Code;
import com.google.devtools.build.lib.server.FailureDetails.FailureDetail;
-import com.google.devtools.build.lib.testutil.Suite;
-import com.google.devtools.build.lib.testutil.TestSpec;
import com.google.devtools.build.lib.util.io.RecordingOutErr;
import com.google.devtools.build.lib.vfs.Path;
import com.google.testing.junit.testparameterinjector.TestParameter;
@@ -36,7 +34,6 @@
import org.junit.runner.RunWith;
/** Tests related to "missing input file" errors. */
-@TestSpec(size = Suite.MEDIUM_TESTS)
@RunWith(TestParameterInjector.class)
public class MissingInputActionTest extends GoogleBuildIntegrationTestCase {
@Override
diff --git a/src/test/java/com/google/devtools/build/lib/buildtool/NoOutputActionTest.java b/src/test/java/com/google/devtools/build/lib/buildtool/NoOutputActionTest.java
index ec69335..55c2f53 100644
--- a/src/test/java/com/google/devtools/build/lib/buildtool/NoOutputActionTest.java
+++ b/src/test/java/com/google/devtools/build/lib/buildtool/NoOutputActionTest.java
@@ -19,8 +19,6 @@
import com.google.devtools.build.lib.actions.BuildFailedException;
import com.google.devtools.build.lib.buildtool.util.BuildIntegrationTestCase;
import com.google.devtools.build.lib.packages.util.MockGenruleSupport;
-import com.google.devtools.build.lib.testutil.Suite;
-import com.google.devtools.build.lib.testutil.TestSpec;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runners.JUnit4;
@@ -30,7 +28,6 @@
* outputs it's supposed to should cause an error to be reported, but not a
* crash.
*/
-@TestSpec(size = Suite.MEDIUM_TESTS)
@RunWith(JUnit4.class)
public class NoOutputActionTest extends BuildIntegrationTestCase {
diff --git a/src/test/java/com/google/devtools/build/lib/buildtool/PackageGroupIntegrationTest.java b/src/test/java/com/google/devtools/build/lib/buildtool/PackageGroupIntegrationTest.java
index 06f6f8b..abf67be 100644
--- a/src/test/java/com/google/devtools/build/lib/buildtool/PackageGroupIntegrationTest.java
+++ b/src/test/java/com/google/devtools/build/lib/buildtool/PackageGroupIntegrationTest.java
@@ -18,8 +18,6 @@
import com.google.devtools.build.lib.analysis.ViewCreationFailedException;
import com.google.devtools.build.lib.analysis.util.AnalysisMock;
import com.google.devtools.build.lib.buildtool.util.BuildIntegrationTestCase;
-import com.google.devtools.build.lib.testutil.Suite;
-import com.google.devtools.build.lib.testutil.TestSpec;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -28,7 +26,6 @@
/**
* Integration test for package groups and visibility.
*/
-@TestSpec(size = Suite.MEDIUM_TESTS)
@RunWith(JUnit4.class)
public class PackageGroupIntegrationTest extends BuildIntegrationTestCase {
@Before
diff --git a/src/test/java/com/google/devtools/build/lib/buildtool/ProgressReportingTest.java b/src/test/java/com/google/devtools/build/lib/buildtool/ProgressReportingTest.java
index 1692051..202ef63 100644
--- a/src/test/java/com/google/devtools/build/lib/buildtool/ProgressReportingTest.java
+++ b/src/test/java/com/google/devtools/build/lib/buildtool/ProgressReportingTest.java
@@ -22,8 +22,6 @@
import com.google.devtools.build.lib.buildtool.util.BuildIntegrationTestCase;
import com.google.devtools.build.lib.events.EventCollector;
import com.google.devtools.build.lib.events.EventKind;
-import com.google.devtools.build.lib.testutil.Suite;
-import com.google.devtools.build.lib.testutil.TestSpec;
import com.google.devtools.build.lib.unix.UnixFileSystem;
import com.google.devtools.build.lib.vfs.DigestHashFunction;
import com.google.devtools.build.lib.vfs.FileSystem;
@@ -38,7 +36,6 @@
/**
* Test for progress reporting.
*/
-@TestSpec(size = Suite.MEDIUM_TESTS)
@RunWith(JUnit4.class)
public class ProgressReportingTest extends BuildIntegrationTestCase {
private enum PathOp {
diff --git a/src/test/java/com/google/devtools/build/lib/buildtool/SymlinkDependencyAnalysisTest.java b/src/test/java/com/google/devtools/build/lib/buildtool/SymlinkDependencyAnalysisTest.java
index 6049f7e..aaf1742 100644
--- a/src/test/java/com/google/devtools/build/lib/buildtool/SymlinkDependencyAnalysisTest.java
+++ b/src/test/java/com/google/devtools/build/lib/buildtool/SymlinkDependencyAnalysisTest.java
@@ -18,8 +18,6 @@
import com.google.devtools.build.lib.buildtool.util.BuildIntegrationTestCase;
import com.google.devtools.build.lib.packages.util.MockGenruleSupport;
-import com.google.devtools.build.lib.testutil.Suite;
-import com.google.devtools.build.lib.testutil.TestSpec;
import com.google.devtools.build.lib.vfs.Path;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -29,7 +27,6 @@
* Test that symbolic links are handled correctly by the dependency analysis:
* that changes of the link target cause a rebuild.
*/
-@TestSpec(size = Suite.MEDIUM_TESTS)
@RunWith(JUnit4.class)
public class SymlinkDependencyAnalysisTest extends BuildIntegrationTestCase {
diff --git a/src/test/java/com/google/devtools/build/lib/buildtool/TransitiveDataDependencyTest.java b/src/test/java/com/google/devtools/build/lib/buildtool/TransitiveDataDependencyTest.java
index f2198f9..502e193 100644
--- a/src/test/java/com/google/devtools/build/lib/buildtool/TransitiveDataDependencyTest.java
+++ b/src/test/java/com/google/devtools/build/lib/buildtool/TransitiveDataDependencyTest.java
@@ -22,8 +22,6 @@
import com.google.devtools.build.lib.actions.BuildFailedException;
import com.google.devtools.build.lib.analysis.ConfiguredTarget;
import com.google.devtools.build.lib.buildtool.util.GoogleBuildIntegrationTestCase;
-import com.google.devtools.build.lib.testutil.Suite;
-import com.google.devtools.build.lib.testutil.TestSpec;
import com.google.devtools.build.lib.util.io.OutErr;
import com.google.devtools.build.lib.util.io.RecordingOutErr;
import org.junit.Before;
@@ -35,7 +33,6 @@
* Tests that concern the transitive closure of data dependencies.
* Regression testing for bug 1022571.
*/
-@TestSpec(size = Suite.MEDIUM_TESTS)
@RunWith(JUnit4.class)
public abstract class TransitiveDataDependencyTest extends GoogleBuildIntegrationTestCase {
diff --git a/src/test/java/com/google/devtools/build/lib/buildtool/util/BUILD b/src/test/java/com/google/devtools/build/lib/buildtool/util/BUILD
index 02f4acc..49c3b6e 100644
--- a/src/test/java/com/google/devtools/build/lib/buildtool/util/BUILD
+++ b/src/test/java/com/google/devtools/build/lib/buildtool/util/BUILD
@@ -54,7 +54,6 @@
"//src/main/java/com/google/devtools/build/lib/buildeventstream",
"//src/main/java/com/google/devtools/build/lib/clock",
"//src/main/java/com/google/devtools/build/lib/cmdline",
- "//src/main/java/com/google/devtools/build/lib/cmdline:cmdline-primitives",
"//src/main/java/com/google/devtools/build/lib/collect/nestedset",
"//src/main/java/com/google/devtools/build/lib/events",
"//src/main/java/com/google/devtools/build/lib/exec:bin_tools",
diff --git a/src/test/java/com/google/devtools/build/lib/buildtool/util/BuildIntegrationTestCase.java b/src/test/java/com/google/devtools/build/lib/buildtool/util/BuildIntegrationTestCase.java
index cecdeea..848a9ab 100644
--- a/src/test/java/com/google/devtools/build/lib/buildtool/util/BuildIntegrationTestCase.java
+++ b/src/test/java/com/google/devtools/build/lib/buildtool/util/BuildIntegrationTestCase.java
@@ -92,11 +92,9 @@
import com.google.devtools.build.lib.skyframe.SkyframeExecutor;
import com.google.devtools.build.lib.skyframe.util.SkyframeExecutorTestUtils;
import com.google.devtools.build.lib.standalone.StandaloneModule;
-import com.google.devtools.build.lib.testutil.Suite;
import com.google.devtools.build.lib.testutil.TestConstants;
import com.google.devtools.build.lib.testutil.TestConstants.InternalTestExecutionMode;
import com.google.devtools.build.lib.testutil.TestFileOutErr;
-import com.google.devtools.build.lib.testutil.TestSpec;
import com.google.devtools.build.lib.testutil.TestUtils;
import com.google.devtools.build.lib.util.CommandBuilder;
import com.google.devtools.build.lib.util.CommandUtils;
@@ -129,7 +127,6 @@
*
* <p>All integration tests are at least size medium.
*/
-@TestSpec(size = Suite.MEDIUM_TESTS)
public abstract class BuildIntegrationTestCase {
/** Thrown when an integration test case fails. */
diff --git a/src/test/java/com/google/devtools/build/lib/exec/AbstractSpawnStrategyTest.java b/src/test/java/com/google/devtools/build/lib/exec/AbstractSpawnStrategyTest.java
index 389b5ec..2f9a019 100644
--- a/src/test/java/com/google/devtools/build/lib/exec/AbstractSpawnStrategyTest.java
+++ b/src/test/java/com/google/devtools/build/lib/exec/AbstractSpawnStrategyTest.java
@@ -48,8 +48,6 @@
import com.google.devtools.build.lib.server.FailureDetails.FailureDetail;
import com.google.devtools.build.lib.server.FailureDetails.Spawn.Code;
import com.google.devtools.build.lib.testutil.Scratch;
-import com.google.devtools.build.lib.testutil.Suite;
-import com.google.devtools.build.lib.testutil.TestSpec;
import com.google.devtools.build.lib.util.io.MessageOutputStream;
import com.google.devtools.build.lib.vfs.DigestHashFunction;
import com.google.devtools.build.lib.vfs.FileSystem;
@@ -67,7 +65,6 @@
/** Tests for {@link BlazeExecutor}. */
@RunWith(JUnit4.class)
-@TestSpec(size = Suite.SMALL_TESTS)
public class AbstractSpawnStrategyTest {
private static final FailureDetail NON_ZERO_EXIT_DETAILS =
FailureDetail.newBuilder()
diff --git a/src/test/java/com/google/devtools/build/lib/exec/BlazeExecutorTest.java b/src/test/java/com/google/devtools/build/lib/exec/BlazeExecutorTest.java
index 7a7b88e..b973d53 100644
--- a/src/test/java/com/google/devtools/build/lib/exec/BlazeExecutorTest.java
+++ b/src/test/java/com/google/devtools/build/lib/exec/BlazeExecutorTest.java
@@ -29,8 +29,6 @@
import com.google.devtools.build.lib.events.Reporter;
import com.google.devtools.build.lib.events.StoredEventHandler;
import com.google.devtools.build.lib.exec.util.TestExecutorBuilder;
-import com.google.devtools.build.lib.testutil.Suite;
-import com.google.devtools.build.lib.testutil.TestSpec;
import com.google.devtools.build.lib.vfs.DigestHashFunction;
import com.google.devtools.build.lib.vfs.FileSystem;
import com.google.devtools.build.lib.vfs.inmemoryfs.InMemoryFileSystem;
@@ -42,7 +40,6 @@
/** Tests for {@link BlazeExecutor}. */
@RunWith(JUnit4.class)
-@TestSpec(size = Suite.SMALL_TESTS)
public class BlazeExecutorTest {
private FileSystem fileSystem;
private BlazeDirectories directories;
diff --git a/src/test/java/com/google/devtools/build/lib/exec/MiddlemanActionTest.java b/src/test/java/com/google/devtools/build/lib/exec/MiddlemanActionTest.java
index c81d122..711ea8a 100644
--- a/src/test/java/com/google/devtools/build/lib/exec/MiddlemanActionTest.java
+++ b/src/test/java/com/google/devtools/build/lib/exec/MiddlemanActionTest.java
@@ -26,8 +26,6 @@
import com.google.devtools.build.lib.analysis.util.BuildViewTestCase;
import com.google.devtools.build.lib.cmdline.RepositoryName;
import com.google.devtools.build.lib.collect.nestedset.NestedSetBuilder;
-import com.google.devtools.build.lib.testutil.Suite;
-import com.google.devtools.build.lib.testutil.TestSpec;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -36,7 +34,6 @@
/**
* A test for {@link MiddlemanAction}.
*/
-@TestSpec(size = Suite.SMALL_TESTS)
@RunWith(JUnit4.class)
public class MiddlemanActionTest extends BuildViewTestCase {
diff --git a/src/test/java/com/google/devtools/build/lib/exec/ParameterFileTest.java b/src/test/java/com/google/devtools/build/lib/exec/ParameterFileTest.java
index ac63178..11b0389 100644
--- a/src/test/java/com/google/devtools/build/lib/exec/ParameterFileTest.java
+++ b/src/test/java/com/google/devtools/build/lib/exec/ParameterFileTest.java
@@ -20,8 +20,6 @@
import com.google.devtools.build.lib.actions.ParameterFile;
import com.google.devtools.build.lib.actions.ParameterFile.ParameterFileType;
import com.google.devtools.build.lib.testutil.FoundationTestCase;
-import com.google.devtools.build.lib.testutil.Suite;
-import com.google.devtools.build.lib.testutil.TestSpec;
import com.google.devtools.build.lib.vfs.PathFragment;
import java.io.ByteArrayOutputStream;
import java.nio.charset.Charset;
@@ -31,7 +29,6 @@
import org.junit.runners.JUnit4;
/** Tests for {@link ParameterFile}. */
-@TestSpec(size = Suite.SMALL_TESTS)
@RunWith(JUnit4.class)
public class ParameterFileTest extends FoundationTestCase {
diff --git a/src/test/java/com/google/devtools/build/lib/exec/SingleBuildFileCacheTest.java b/src/test/java/com/google/devtools/build/lib/exec/SingleBuildFileCacheTest.java
index ddcd40f..fa23eec 100644
--- a/src/test/java/com/google/devtools/build/lib/exec/SingleBuildFileCacheTest.java
+++ b/src/test/java/com/google/devtools/build/lib/exec/SingleBuildFileCacheTest.java
@@ -20,8 +20,6 @@
import com.google.devtools.build.lib.actions.ActionInput;
import com.google.devtools.build.lib.actions.ActionInputHelper;
import com.google.devtools.build.lib.actions.DigestOfDirectoryException;
-import com.google.devtools.build.lib.testutil.Suite;
-import com.google.devtools.build.lib.testutil.TestSpec;
import com.google.devtools.build.lib.vfs.DigestHashFunction;
import com.google.devtools.build.lib.vfs.FileSystem;
import com.google.devtools.build.lib.vfs.FileSystemUtils;
@@ -40,7 +38,6 @@
/** Tests SingleBuildFileCache. */
@RunWith(JUnit4.class)
-@TestSpec(size = Suite.SMALL_TESTS)
public class SingleBuildFileCacheTest {
private FileSystem fs;
private Map<String, Integer> calls;
diff --git a/src/test/java/com/google/devtools/build/lib/packages/ImplicitOutputsFunctionTest.java b/src/test/java/com/google/devtools/build/lib/packages/ImplicitOutputsFunctionTest.java
index b0a3a23..907e602 100644
--- a/src/test/java/com/google/devtools/build/lib/packages/ImplicitOutputsFunctionTest.java
+++ b/src/test/java/com/google/devtools/build/lib/packages/ImplicitOutputsFunctionTest.java
@@ -19,8 +19,6 @@
import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableMap;
import com.google.devtools.build.lib.packages.ImplicitOutputsFunction.AttributeValueGetter;
-import com.google.devtools.build.lib.testutil.Suite;
-import com.google.devtools.build.lib.testutil.TestSpec;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
@@ -35,7 +33,6 @@
/**
* Tests for {@link ImplicitOutputsFunction}.
*/
-@TestSpec(size = Suite.SMALL_TESTS)
@RunWith(JUnit4.class)
public final class ImplicitOutputsFunctionTest {
private void assertPlaceholderCollection(
diff --git a/src/test/java/com/google/devtools/build/lib/runtime/LineBufferedOutputStreamTest.java b/src/test/java/com/google/devtools/build/lib/runtime/LineBufferedOutputStreamTest.java
index e7fd638..b81a6dc 100644
--- a/src/test/java/com/google/devtools/build/lib/runtime/LineBufferedOutputStreamTest.java
+++ b/src/test/java/com/google/devtools/build/lib/runtime/LineBufferedOutputStreamTest.java
@@ -17,8 +17,6 @@
import static org.junit.Assert.assertThrows;
import com.google.common.base.Strings;
-import com.google.devtools.build.lib.testutil.Suite;
-import com.google.devtools.build.lib.testutil.TestSpec;
import java.io.IOException;
import java.io.OutputStream;
import java.nio.charset.StandardCharsets;
@@ -31,7 +29,6 @@
/**
* Unit tests for {@link LineBufferedOutputStream} .
*/
-@TestSpec(size = Suite.SMALL_TESTS)
@RunWith(JUnit4.class)
public class LineBufferedOutputStreamTest {
private static class MockOutputStream extends OutputStream {
diff --git a/src/test/java/com/google/devtools/build/lib/runtime/TargetSummaryEventTest.java b/src/test/java/com/google/devtools/build/lib/runtime/TargetSummaryEventTest.java
index 961a86c..511ae8e 100644
--- a/src/test/java/com/google/devtools/build/lib/runtime/TargetSummaryEventTest.java
+++ b/src/test/java/com/google/devtools/build/lib/runtime/TargetSummaryEventTest.java
@@ -23,8 +23,6 @@
import com.google.devtools.build.lib.buildeventstream.BuildEventStreamProtos.BuildEvent;
import com.google.devtools.build.lib.buildeventstream.BuildEventStreamProtos.TestStatus;
import com.google.devtools.build.lib.cmdline.Label;
-import com.google.devtools.build.lib.testutil.Suite;
-import com.google.devtools.build.lib.testutil.TestSpec;
import com.google.devtools.build.lib.view.test.TestStatus.BlazeTestStatus;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -32,7 +30,6 @@
/** Unit tests for {@link TargetSummaryPublisher}. */
@RunWith(JUnit4.class)
-@TestSpec(size = Suite.SMALL_TESTS)
public final class TargetSummaryEventTest {
private static final String PATH = "package";
private static final String TARGET_NAME = "name";
diff --git a/src/test/java/com/google/devtools/build/lib/runtime/TestResultAggregatorTest.java b/src/test/java/com/google/devtools/build/lib/runtime/TestResultAggregatorTest.java
index 7522eaa..8a72814 100644
--- a/src/test/java/com/google/devtools/build/lib/runtime/TestResultAggregatorTest.java
+++ b/src/test/java/com/google/devtools/build/lib/runtime/TestResultAggregatorTest.java
@@ -30,8 +30,6 @@
import com.google.devtools.build.lib.analysis.test.TestRunnerAction;
import com.google.devtools.build.lib.packages.TestTimeout;
import com.google.devtools.build.lib.runtime.TestResultAggregator.AggregationPolicy;
-import com.google.devtools.build.lib.testutil.Suite;
-import com.google.devtools.build.lib.testutil.TestSpec;
import com.google.devtools.build.lib.view.test.TestStatus.BlazeTestStatus;
import com.google.devtools.build.lib.view.test.TestStatus.TestResultData;
import java.util.stream.Stream;
@@ -41,7 +39,6 @@
import org.junit.runners.JUnit4;
/** Tests for {@link TestResultAggregator}. */
-@TestSpec(size = Suite.SMALL_TESTS)
@RunWith(JUnit4.class)
public final class TestResultAggregatorTest {
diff --git a/src/test/java/com/google/devtools/build/lib/runtime/commands/ConfigCommandTest.java b/src/test/java/com/google/devtools/build/lib/runtime/commands/ConfigCommandTest.java
index c441c5f..7545cd7 100644
--- a/src/test/java/com/google/devtools/build/lib/runtime/commands/ConfigCommandTest.java
+++ b/src/test/java/com/google/devtools/build/lib/runtime/commands/ConfigCommandTest.java
@@ -26,9 +26,7 @@
import com.google.devtools.build.lib.runtime.commands.ConfigCommand.ConfigurationDiffForOutput;
import com.google.devtools.build.lib.runtime.commands.ConfigCommand.ConfigurationForOutput;
import com.google.devtools.build.lib.runtime.commands.ConfigCommand.FragmentDiffForOutput;
-import com.google.devtools.build.lib.testutil.Suite;
import com.google.devtools.build.lib.testutil.TestConstants;
-import com.google.devtools.build.lib.testutil.TestSpec;
import com.google.devtools.build.lib.util.Pair;
import com.google.devtools.build.lib.util.io.RecordingOutErr;
import com.google.gson.Gson;
@@ -53,7 +51,6 @@
* so the output formatter used doesn't affect those properties. We test with <code>--output=json
* </code> for easy parsing.
*/
-@TestSpec(size = Suite.MEDIUM_TESTS)
@RunWith(JUnit4.class)
public class ConfigCommandTest extends BuildIntegrationTestCase {
private BlazeCommandDispatcher dispatcher;
diff --git a/src/test/java/com/google/devtools/build/lib/server/GrpcServerTest.java b/src/test/java/com/google/devtools/build/lib/server/GrpcServerTest.java
index d0b73de..3886ba3 100644
--- a/src/test/java/com/google/devtools/build/lib/server/GrpcServerTest.java
+++ b/src/test/java/com/google/devtools/build/lib/server/GrpcServerTest.java
@@ -33,8 +33,6 @@
import com.google.devtools.build.lib.server.FailureDetails.Interrupted;
import com.google.devtools.build.lib.server.FailureDetails.Interrupted.Code;
import com.google.devtools.build.lib.server.GrpcServerImpl.BlockingStreamObserver;
-import com.google.devtools.build.lib.testutil.Suite;
-import com.google.devtools.build.lib.testutil.TestSpec;
import com.google.devtools.build.lib.testutil.TestUtils;
import com.google.devtools.build.lib.util.Pair;
import com.google.devtools.build.lib.util.io.OutErr;
@@ -68,7 +66,6 @@
import org.junit.runners.JUnit4;
/** Unit tests for the gRPC server. */
-@TestSpec(size = Suite.SMALL_TESTS)
@RunWith(JUnit4.class)
public final class GrpcServerTest {
diff --git a/src/test/java/com/google/devtools/build/lib/skyframe/ConfigurationsForTargetsTest.java b/src/test/java/com/google/devtools/build/lib/skyframe/ConfigurationsForTargetsTest.java
index 5f84bf4..1d7b1fa 100644
--- a/src/test/java/com/google/devtools/build/lib/skyframe/ConfigurationsForTargetsTest.java
+++ b/src/test/java/com/google/devtools/build/lib/skyframe/ConfigurationsForTargetsTest.java
@@ -38,8 +38,6 @@
import com.google.devtools.build.lib.packages.RuleClassProvider;
import com.google.devtools.build.lib.packages.Target;
import com.google.devtools.build.lib.skyframe.util.SkyframeExecutorTestUtils;
-import com.google.devtools.build.lib.testutil.Suite;
-import com.google.devtools.build.lib.testutil.TestSpec;
import com.google.devtools.build.lib.util.OrderedSetMultimap;
import com.google.devtools.build.skyframe.AbstractSkyKey;
import com.google.devtools.build.skyframe.EvaluationResult;
@@ -73,7 +71,6 @@
* method needs a {@link SkyFunction.Environment} and Blaze's test infrastructure doesn't support
* direct access to environments.
*/
-@TestSpec(size = Suite.SMALL_TESTS)
@RunWith(JUnit4.class)
public class ConfigurationsForTargetsTest extends AnalysisTestCase {
diff --git a/src/test/java/com/google/devtools/build/lib/skyframe/ParallelBuilderMediumTest.java b/src/test/java/com/google/devtools/build/lib/skyframe/ParallelBuilderMediumTest.java
index 7884ab9..6705d72 100644
--- a/src/test/java/com/google/devtools/build/lib/skyframe/ParallelBuilderMediumTest.java
+++ b/src/test/java/com/google/devtools/build/lib/skyframe/ParallelBuilderMediumTest.java
@@ -14,8 +14,6 @@
package com.google.devtools.build.lib.skyframe;
-import com.google.devtools.build.lib.testutil.Suite;
-import com.google.devtools.build.lib.testutil.TestSpec;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -24,7 +22,6 @@
/**
* Stress tests for the parallel builder.
*/
-@TestSpec(size = Suite.MEDIUM_TESTS)
@RunWith(JUnit4.class)
public class ParallelBuilderMediumTest extends ParallelBuilderTest {
diff --git a/src/test/java/com/google/devtools/build/lib/skyframe/ParallelBuilderTest.java b/src/test/java/com/google/devtools/build/lib/skyframe/ParallelBuilderTest.java
index c5b3fe9..537245d 100644
--- a/src/test/java/com/google/devtools/build/lib/skyframe/ParallelBuilderTest.java
+++ b/src/test/java/com/google/devtools/build/lib/skyframe/ParallelBuilderTest.java
@@ -45,8 +45,6 @@
import com.google.devtools.build.lib.server.FailureDetails.Crash.Code;
import com.google.devtools.build.lib.server.FailureDetails.FailureDetail;
import com.google.devtools.build.lib.testutil.BlazeTestUtils;
-import com.google.devtools.build.lib.testutil.Suite;
-import com.google.devtools.build.lib.testutil.TestSpec;
import com.google.devtools.build.lib.testutil.TestUtils;
import com.google.devtools.build.lib.util.DetailedExitCode;
import com.google.devtools.build.lib.vfs.DigestHashFunction;
@@ -77,7 +75,6 @@
* Test suite for ParallelBuilder.
*
*/
-@TestSpec(size = Suite.MEDIUM_TESTS)
@RunWith(JUnit4.class)
public class ParallelBuilderTest extends TimestampBuilderTestCase {
diff --git a/src/test/java/com/google/devtools/build/lib/skyframe/TimestampBuilderMediumTest.java b/src/test/java/com/google/devtools/build/lib/skyframe/TimestampBuilderMediumTest.java
index eaf87f1..fdda30d 100644
--- a/src/test/java/com/google/devtools/build/lib/skyframe/TimestampBuilderMediumTest.java
+++ b/src/test/java/com/google/devtools/build/lib/skyframe/TimestampBuilderMediumTest.java
@@ -24,8 +24,6 @@
import com.google.devtools.build.lib.collect.nestedset.NestedSetBuilder;
import com.google.devtools.build.lib.collect.nestedset.Order;
import com.google.devtools.build.lib.testutil.BlazeTestUtils;
-import com.google.devtools.build.lib.testutil.Suite;
-import com.google.devtools.build.lib.testutil.TestSpec;
import com.google.devtools.build.lib.vfs.FileSystemUtils;
import com.google.devtools.build.lib.vfs.Path;
import com.google.devtools.build.lib.vfs.UnixGlob;
@@ -39,7 +37,6 @@
* These tests belong to {@link TimestampBuilderTest}, but they're in a separate class for now
* because they are a little slower.
*/
-@TestSpec(size = Suite.MEDIUM_TESTS)
@RunWith(JUnit4.class)
public class TimestampBuilderMediumTest extends TimestampBuilderTestCase {
private Path cacheRoot;
diff --git a/src/test/java/com/google/devtools/build/lib/skyframe/ToolchainsForTargetsTest.java b/src/test/java/com/google/devtools/build/lib/skyframe/ToolchainsForTargetsTest.java
index f05b487..2eff86b 100644
--- a/src/test/java/com/google/devtools/build/lib/skyframe/ToolchainsForTargetsTest.java
+++ b/src/test/java/com/google/devtools/build/lib/skyframe/ToolchainsForTargetsTest.java
@@ -28,8 +28,6 @@
import com.google.devtools.build.lib.packages.RuleClassProvider;
import com.google.devtools.build.lib.skyframe.ConfiguredTargetFunction.ComputedToolchainContexts;
import com.google.devtools.build.lib.skyframe.util.SkyframeExecutorTestUtils;
-import com.google.devtools.build.lib.testutil.Suite;
-import com.google.devtools.build.lib.testutil.TestSpec;
import com.google.devtools.build.skyframe.EvaluationResult;
import com.google.devtools.build.skyframe.SkyFunction;
import com.google.devtools.build.skyframe.SkyFunctionException;
@@ -58,7 +56,6 @@
* because that method needs a {@link SkyFunction.Environment} and Blaze's test infrastructure
* doesn't support direct access to environments.
*/
-@TestSpec(size = Suite.SMALL_TESTS)
@RunWith(JUnit4.class)
public class ToolchainsForTargetsTest extends AnalysisTestCase {
/** Returns a {@link SkyKey} for a given <Target, BuildConfiguration> pair. */
diff --git a/src/test/java/com/google/devtools/build/lib/testutil/BUILD b/src/test/java/com/google/devtools/build/lib/testutil/BUILD
index 11ac8ba..3b5f4c1 100644
--- a/src/test/java/com/google/devtools/build/lib/testutil/BUILD
+++ b/src/test/java/com/google/devtools/build/lib/testutil/BUILD
@@ -32,7 +32,6 @@
"ManualClock.java",
"ManualSleeper.java",
"Scratch.java",
- "Suite.java",
"TestFileOutErr.java",
"TestRuleClassProvider.java",
"TestSpec.java",
@@ -92,7 +91,6 @@
"//src/main/java/com/google/devtools/build/lib/skyframe/packages:PackageLoader",
"//src/main/java/com/google/devtools/build/lib/vfs",
"//src/main/java/net/starlark/java/eval",
- "//src/main/java/net/starlark/java/syntax",
"//third_party:guava",
],
)
@@ -216,7 +214,6 @@
srcs = [
"ManualSleeperTest.java",
"MoreAssertsTest.java",
- "TestSizeAnnotationTest.java",
],
deps = [
":JunitUtils",
diff --git a/src/test/java/com/google/devtools/build/lib/testutil/BazelTestSuiteBuilder.java b/src/test/java/com/google/devtools/build/lib/testutil/BazelTestSuiteBuilder.java
index b60d2bc..d20951e 100644
--- a/src/test/java/com/google/devtools/build/lib/testutil/BazelTestSuiteBuilder.java
+++ b/src/test/java/com/google/devtools/build/lib/testutil/BazelTestSuiteBuilder.java
@@ -16,6 +16,8 @@
import com.google.common.base.Predicate;
import com.google.common.collect.ImmutableSet;
import com.google.devtools.build.lib.util.OS;
+import java.lang.reflect.InvocationTargetException;
+import java.lang.reflect.Method;
import java.util.logging.Level;
import java.util.logging.Logger;
@@ -43,8 +45,30 @@
new Predicate<Class<?>>() {
@Override
public boolean apply(Class<?> testClass) {
- ImmutableSet<OS> supportedOs = ImmutableSet.copyOf(Suite.getSupportedOs(testClass));
+ ImmutableSet<OS> supportedOs = ImmutableSet.copyOf(getSupportedOs(testClass));
return supportedOs.isEmpty() || supportedOs.contains(OS.getCurrent());
}
};
+
+ /** Given a class, determine the list of operating systems its tests can run under. */
+ private static OS[] getSupportedOs(Class<?> clazz) {
+ return getAnnotationElementOrDefault(clazz, "supportedOs");
+ }
+
+ /**
+ * Returns the value of the given element in the {@link TestSpec} annotation of the given class,
+ * or the default value of that element if the class doesn't have a {@link TestSpec} annotation.
+ */
+ @SuppressWarnings("unchecked")
+ private static <T> T getAnnotationElementOrDefault(Class<?> clazz, String elementName) {
+ TestSpec spec = clazz.getAnnotation(TestSpec.class);
+ try {
+ Method method = TestSpec.class.getMethod(elementName);
+ return spec != null ? (T) method.invoke(spec) : (T) method.getDefaultValue();
+ } catch (NoSuchMethodException e) {
+ throw new IllegalStateException("no such element " + elementName, e);
+ } catch (IllegalAccessException | IllegalArgumentException | InvocationTargetException e) {
+ throw new IllegalStateException("can't invoke accessor for element " + elementName, e);
+ }
+ }
}
diff --git a/src/test/java/com/google/devtools/build/lib/testutil/Suite.java b/src/test/java/com/google/devtools/build/lib/testutil/Suite.java
deleted file mode 100644
index 4ce3159..0000000
--- a/src/test/java/com/google/devtools/build/lib/testutil/Suite.java
+++ /dev/null
@@ -1,80 +0,0 @@
-// Copyright 2014 The Bazel Authors. All rights reserved.
-//
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-package com.google.devtools.build.lib.testutil;
-
-import com.google.devtools.build.lib.util.OS;
-import java.lang.reflect.InvocationTargetException;
-import java.lang.reflect.Method;
-
-/**
- * Test annotations used to select which tests to run in a given situation.
- */
-public enum Suite {
-
- /**
- * It's so blazingly fast and lightweight we run it whenever we make any
- * build.lib change. This size is the default.
- */
- SMALL_TESTS,
-
- /**
- * It's a bit too slow to run all the time, but it still tests some
- * unit of functionality. May run external commands such as gcc, for example.
- */
- MEDIUM_TESTS,
-
- /**
- * I don't even want to think about running this one after every edit,
- * but I don't mind if the continuous build runs it, and I'm happy to have
- * it before making a release.
- */
- LARGE_TESTS,
-
- /**
- * These tests take a long time. They should only ever be run manually and probably from their
- * own Blaze test target.
- */
- ENORMOUS_TESTS;
-
- /**
- * Given a class, determine the test size.
- */
- public static Suite getSize(Class<?> clazz) {
- return getAnnotationElementOrDefault(clazz, "size");
- }
-
- /**
- * Given a class, determine the list of operating systems its tests can run under.
- */
- public static OS[] getSupportedOs(Class<?> clazz) {
- return getAnnotationElementOrDefault(clazz, "supportedOs");
- }
-
- /**
- * Returns the value of the given element in the {@link TestSpec} annotation of the given class,
- * or the default value of that element if the class doesn't have a {@link TestSpec} annotation.
- */
- @SuppressWarnings("unchecked")
- private static <T> T getAnnotationElementOrDefault(Class<?> clazz, String elementName) {
- TestSpec spec = clazz.getAnnotation(TestSpec.class);
- try {
- Method method = TestSpec.class.getMethod(elementName);
- return spec != null ? (T) method.invoke(spec) : (T) method.getDefaultValue();
- } catch (NoSuchMethodException e) {
- throw new IllegalStateException("no such element " + elementName, e);
- } catch (IllegalAccessException | IllegalArgumentException | InvocationTargetException e) {
- throw new IllegalStateException("can't invoke accessor for element " + elementName, e);
- }
- }
-}
diff --git a/src/test/java/com/google/devtools/build/lib/testutil/TestSizeAnnotationTest.java b/src/test/java/com/google/devtools/build/lib/testutil/TestSizeAnnotationTest.java
deleted file mode 100644
index f929e5d..0000000
--- a/src/test/java/com/google/devtools/build/lib/testutil/TestSizeAnnotationTest.java
+++ /dev/null
@@ -1,119 +0,0 @@
-// Copyright 2014 The Bazel Authors. All rights reserved.
-//
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-package com.google.devtools.build.lib.testutil;
-
-import static com.google.common.truth.Truth.assertThat;
-import static com.google.devtools.build.lib.testutil.Suite.getSize;
-
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.junit.runners.JUnit4;
-
-/**
- * Tests {@link com.google.devtools.build.lib.testutil.Suite#getSize(Class)}.
- */
-@RunWith(JUnit4.class)
-public class TestSizeAnnotationTest {
-
- private static class HasNoTestSpecAnnotation {
-
- }
-
- @TestSpec
- private static class HasNoSizeAnnotationElement {}
-
- @TestSpec(size = Suite.SMALL_TESTS)
- private static class IsAnnotatedWithSmallSize {
-
- }
-
- @TestSpec(size = Suite.MEDIUM_TESTS)
- private static class IsAnnotatedWithMediumSize {
-
- }
-
- @TestSpec(size = Suite.LARGE_TESTS)
- private static class IsAnnotatedWithLargeSize {
-
- }
-
- private static class SuperclassHasAnnotationButNoSizeElement
- extends HasNoSizeAnnotationElement {
-
- }
-
- @TestSpec(size = Suite.LARGE_TESTS)
- private static class HasSizeElementAndSuperclassHasAnnotationButNoSizeElement
- extends HasNoSizeAnnotationElement {
-
- }
-
- private static class SuperclassHasAnnotationWithSizeElement
- extends IsAnnotatedWithSmallSize {
-
- }
-
- @TestSpec(size = Suite.LARGE_TESTS)
- private static class HasSizeElementAndSuperclassHasAnnotationWithSizeElement
- extends IsAnnotatedWithSmallSize {
-
- }
-
- @Test
- public void testHasNoTestSpecAnnotationIsSmall() {
- assertThat(getSize(HasNoTestSpecAnnotation.class)).isEqualTo(Suite.SMALL_TESTS);
- }
-
- @Test
- public void testHasNoSizeAnnotationElementIsSmall() {
- assertThat(getSize(HasNoSizeAnnotationElement.class)).isEqualTo(Suite.SMALL_TESTS);
- }
-
- @Test
- public void testIsAnnotatedWithSmallSizeIsSmall() {
- assertThat(getSize(IsAnnotatedWithSmallSize.class)).isEqualTo(Suite.SMALL_TESTS);
- }
-
- @Test
- public void testIsAnnotatedWithMediumSizeIsMedium() {
- assertThat(getSize(IsAnnotatedWithMediumSize.class)).isEqualTo(Suite.MEDIUM_TESTS);
- }
-
- @Test
- public void testIsAnnotatedWithLargeSizeIsLarge() {
- assertThat(getSize(IsAnnotatedWithLargeSize.class)).isEqualTo(Suite.LARGE_TESTS);
- }
-
- @Test
- public void testSuperclassHasAnnotationButNoSizeElement() {
- assertThat(getSize(SuperclassHasAnnotationButNoSizeElement.class)).isEqualTo(Suite.SMALL_TESTS);
- }
-
- @Test
- public void testHasSizeElementAndSuperclassHasAnnotationButNoSizeElement() {
- assertThat(getSize(HasSizeElementAndSuperclassHasAnnotationButNoSizeElement.class))
- .isEqualTo(Suite.LARGE_TESTS);
- }
-
- @Test
- public void testSuperclassHasAnnotationWithSizeElement() {
- assertThat(getSize(SuperclassHasAnnotationWithSizeElement.class)).isEqualTo(Suite.SMALL_TESTS);
- }
-
- @Test
- public void testHasSizeElementAndSuperclassHasAnnotationWithSizeElement() {
- assertThat(getSize(HasSizeElementAndSuperclassHasAnnotationWithSizeElement.class))
- .isEqualTo(Suite.LARGE_TESTS);
- }
-}
diff --git a/src/test/java/com/google/devtools/build/lib/testutil/TestSpec.java b/src/test/java/com/google/devtools/build/lib/testutil/TestSpec.java
index 7633cde..bd4f938 100644
--- a/src/test/java/com/google/devtools/build/lib/testutil/TestSpec.java
+++ b/src/test/java/com/google/devtools/build/lib/testutil/TestSpec.java
@@ -20,21 +20,11 @@
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
-/**
- * An annotation class which we use to attach a little meta data to test
- * classes. For now, we use this to attach a {@link Suite}.
- */
+/** An annotation class which we use to attach a little meta data to test classes. */
@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
@Inherited
public @interface TestSpec {
-
- /**
- * The size of the specified test, in terms of its resource consumption and
- * execution time.
- */
- Suite size() default Suite.SMALL_TESTS;
-
/**
* An array of operating systems that the test can run under. If not specified, the test can
* run under all operating systems.