Split testutils out of query2 tests
And make it so that the query tests actually test...
PiperOrigin-RevId: 275499006
diff --git a/src/test/java/com/google/devtools/build/lib/BUILD b/src/test/java/com/google/devtools/build/lib/BUILD
index d5ece44..a287718 100644
--- a/src/test/java/com/google/devtools/build/lib/BUILD
+++ b/src/test/java/com/google/devtools/build/lib/BUILD
@@ -54,6 +54,7 @@
"//src/test/java/com/google/devtools/build/lib/profiler/callcounts:srcs",
"//src/test/java/com/google/devtools/build/lib/profiler/memory:srcs",
"//src/test/java/com/google/devtools/build/lib/query2:srcs",
+ "//src/test/java/com/google/devtools/build/lib/query2/testutil:srcs",
"//src/test/java/com/google/devtools/build/lib/remote:srcs",
"//src/test/java/com/google/devtools/build/lib/rules/android:srcs",
"//src/test/java/com/google/devtools/build/lib/rules/apple:srcs",
diff --git a/src/test/java/com/google/devtools/build/lib/query2/BUILD b/src/test/java/com/google/devtools/build/lib/query2/BUILD
index b80e6aa..6bbbab1 100644
--- a/src/test/java/com/google/devtools/build/lib/query2/BUILD
+++ b/src/test/java/com/google/devtools/build/lib/query2/BUILD
@@ -1,4 +1,4 @@
-load("@rules_java//java:defs.bzl", "java_library")
+load("@rules_java//java:defs.bzl", "java_library", "java_test")
package(
default_testonly = 1,
@@ -15,64 +15,17 @@
srcs = glob(["**"]),
)
-########################################################################
-#
-# Tests for Bazel query language, v2.
-#
-
-QUERY_TESTUTIL_SRCS = [
- "engine/AbstractQueryTest.java",
- "engine/AbstractQueryHelper.java",
- "engine/SkyframeQueryHelper.java",
- "PostAnalysisQueryHelper.java",
- "PostAnalysisQueryTest.java",
-]
-
-java_library(
- name = "query-testutil",
- srcs = QUERY_TESTUTIL_SRCS,
- deps = [
- "//src/main/java/com/google/devtools/build/lib:build-base",
- "//src/main/java/com/google/devtools/build/lib:events",
- "//src/main/java/com/google/devtools/build/lib:filetype",
- "//src/main/java/com/google/devtools/build/lib:io",
- "//src/main/java/com/google/devtools/build/lib:packages",
- "//src/main/java/com/google/devtools/build/lib/actions",
- "//src/main/java/com/google/devtools/build/lib/cmdline",
- "//src/main/java/com/google/devtools/build/lib/graph",
- "//src/main/java/com/google/devtools/build/lib/query2",
- "//src/main/java/com/google/devtools/build/lib/query2/common:abstract-blaze-query-env",
- "//src/main/java/com/google/devtools/build/lib/query2/engine",
- "//src/main/java/com/google/devtools/build/lib/rules/cpp",
- "//src/main/java/com/google/devtools/build/lib/rules/java:java-implicit-attributes",
- "//src/main/java/com/google/devtools/build/lib/vfs",
- "//src/main/java/com/google/devtools/build/lib/vfs:pathfragment",
- "//src/main/java/com/google/devtools/build/lib/vfs/inmemoryfs",
- "//src/main/java/com/google/devtools/build/skyframe",
- "//src/main/java/com/google/devtools/build/skyframe:skyframe-objects",
- "//src/main/java/com/google/devtools/common/options",
- "//src/main/protobuf:build_java_proto",
- "//src/test/java/com/google/devtools/build/lib:analysis_testutil",
- "//src/test/java/com/google/devtools/build/lib:packages_testutil",
- "//src/test/java/com/google/devtools/build/lib:testutil",
- "//third_party:guava",
- "//third_party:jsr305",
- "//third_party:junit4",
- "//third_party:truth",
- ],
-)
-
-# A library containing the actual tests for the :query2 library.
java_library(
name = "Query2Tests_lib",
srcs = glob(
[
- "**/*.java",
+ "*.java",
+ "aquery/*.java",
+ "cquery/*.java",
+ "engine/*.java",
],
- exclude = QUERY_TESTUTIL_SRCS,
),
deps = [
- ":query-testutil",
"//src/main/java/com/google/devtools/build/lib:build-base",
"//src/main/java/com/google/devtools/build/lib:events",
"//src/main/java/com/google/devtools/build/lib:filetype",
@@ -94,9 +47,18 @@
"//src/test/java/com/google/devtools/build/lib:default_test_build_rules",
"//src/test/java/com/google/devtools/build/lib:packages_testutil",
"//src/test/java/com/google/devtools/build/lib:testutil",
+ "//src/test/java/com/google/devtools/build/lib/query2/testutil",
"//third_party:guava",
"//third_party:jsr305",
"//third_party:junit4",
"//third_party:truth",
],
)
+
+java_test(
+ name = "AllTests",
+ size = "large",
+ shard_count = 20,
+ test_class = "com.google.devtools.build.lib.query2.AllTests",
+ runtime_deps = [":Query2Tests_lib"],
+)
diff --git a/src/test/java/com/google/devtools/build/lib/query2/aquery/ActionGraphQueryHelper.java b/src/test/java/com/google/devtools/build/lib/query2/aquery/ActionGraphQueryHelper.java
index 4df941d..aba549f 100644
--- a/src/test/java/com/google/devtools/build/lib/query2/aquery/ActionGraphQueryHelper.java
+++ b/src/test/java/com/google/devtools/build/lib/query2/aquery/ActionGraphQueryHelper.java
@@ -16,8 +16,8 @@
import com.google.common.collect.ImmutableList;
import com.google.devtools.build.lib.query2.PostAnalysisQueryEnvironment;
import com.google.devtools.build.lib.query2.PostAnalysisQueryEnvironment.TopLevelConfigurations;
-import com.google.devtools.build.lib.query2.PostAnalysisQueryHelper;
import com.google.devtools.build.lib.query2.engine.QueryEnvironment.QueryFunction;
+import com.google.devtools.build.lib.query2.testutil.PostAnalysisQueryHelper;
import com.google.devtools.build.lib.skyframe.ConfiguredTargetValue;
import com.google.devtools.build.skyframe.WalkableGraph;
diff --git a/src/test/java/com/google/devtools/build/lib/query2/aquery/ActionGraphQueryTest.java b/src/test/java/com/google/devtools/build/lib/query2/aquery/ActionGraphQueryTest.java
index b4031c6..9d5c847 100644
--- a/src/test/java/com/google/devtools/build/lib/query2/aquery/ActionGraphQueryTest.java
+++ b/src/test/java/com/google/devtools/build/lib/query2/aquery/ActionGraphQueryTest.java
@@ -17,8 +17,8 @@
import com.google.common.collect.ImmutableList;
import com.google.devtools.build.lib.analysis.config.BuildConfiguration;
-import com.google.devtools.build.lib.query2.PostAnalysisQueryTest;
import com.google.devtools.build.lib.query2.engine.QueryEnvironment.QueryFunction;
+import com.google.devtools.build.lib.query2.testutil.PostAnalysisQueryTest;
import com.google.devtools.build.lib.skyframe.ConfiguredTargetValue;
import java.util.HashMap;
import java.util.Iterator;
diff --git a/src/test/java/com/google/devtools/build/lib/query2/cquery/ConfiguredTargetQueryHelper.java b/src/test/java/com/google/devtools/build/lib/query2/cquery/ConfiguredTargetQueryHelper.java
index 15c399d..1098684 100644
--- a/src/test/java/com/google/devtools/build/lib/query2/cquery/ConfiguredTargetQueryHelper.java
+++ b/src/test/java/com/google/devtools/build/lib/query2/cquery/ConfiguredTargetQueryHelper.java
@@ -17,9 +17,9 @@
import com.google.devtools.build.lib.analysis.ConfiguredTarget;
import com.google.devtools.build.lib.analysis.util.AnalysisTestCase;
import com.google.devtools.build.lib.query2.PostAnalysisQueryEnvironment.TopLevelConfigurations;
-import com.google.devtools.build.lib.query2.PostAnalysisQueryHelper;
-import com.google.devtools.build.lib.query2.engine.AbstractQueryTest.QueryHelper;
import com.google.devtools.build.lib.query2.engine.QueryEnvironment.QueryFunction;
+import com.google.devtools.build.lib.query2.testutil.AbstractQueryTest.QueryHelper;
+import com.google.devtools.build.lib.query2.testutil.PostAnalysisQueryHelper;
import com.google.devtools.build.skyframe.WalkableGraph;
/**
diff --git a/src/test/java/com/google/devtools/build/lib/query2/cquery/ConfiguredTargetQueryTest.java b/src/test/java/com/google/devtools/build/lib/query2/cquery/ConfiguredTargetQueryTest.java
index 7cbedb0..e7cc3ec 100644
--- a/src/test/java/com/google/devtools/build/lib/query2/cquery/ConfiguredTargetQueryTest.java
+++ b/src/test/java/com/google/devtools/build/lib/query2/cquery/ConfiguredTargetQueryTest.java
@@ -32,9 +32,9 @@
import com.google.devtools.build.lib.analysis.util.MockRule;
import com.google.devtools.build.lib.cmdline.Label;
import com.google.devtools.build.lib.packages.BuildType;
-import com.google.devtools.build.lib.query2.PostAnalysisQueryTest;
import com.google.devtools.build.lib.query2.engine.QueryEnvironment.QueryFunction;
import com.google.devtools.build.lib.query2.engine.QueryEnvironment.Setting;
+import com.google.devtools.build.lib.query2.testutil.PostAnalysisQueryTest;
import com.google.devtools.build.lib.util.FileTypeSet;
import com.google.devtools.build.lib.vfs.Path;
import java.util.Collection;
diff --git a/src/test/java/com/google/devtools/build/lib/query2/engine/GraphlessQueryTest.java b/src/test/java/com/google/devtools/build/lib/query2/engine/GraphlessQueryTest.java
index 643379b..549f228 100644
--- a/src/test/java/com/google/devtools/build/lib/query2/engine/GraphlessQueryTest.java
+++ b/src/test/java/com/google/devtools/build/lib/query2/engine/GraphlessQueryTest.java
@@ -33,6 +33,8 @@
import com.google.devtools.build.lib.query2.engine.QueryEnvironment.QueryFunction;
import com.google.devtools.build.lib.query2.engine.QueryEnvironment.Setting;
import com.google.devtools.build.lib.query2.query.GraphlessBlazeQueryEnvironment;
+import com.google.devtools.build.lib.query2.testutil.AbstractQueryTest;
+import com.google.devtools.build.lib.query2.testutil.SkyframeQueryHelper;
import com.google.devtools.build.lib.vfs.PathFragment;
import com.google.devtools.build.skyframe.WalkableGraph.WalkableGraphFactory;
import java.util.List;
diff --git a/src/test/java/com/google/devtools/build/lib/query2/engine/AbstractQueryHelper.java b/src/test/java/com/google/devtools/build/lib/query2/testutil/AbstractQueryHelper.java
similarity index 95%
rename from src/test/java/com/google/devtools/build/lib/query2/engine/AbstractQueryHelper.java
rename to src/test/java/com/google/devtools/build/lib/query2/testutil/AbstractQueryHelper.java
index 1e0dfbc..2be9fc3 100644
--- a/src/test/java/com/google/devtools/build/lib/query2/engine/AbstractQueryHelper.java
+++ b/src/test/java/com/google/devtools/build/lib/query2/testutil/AbstractQueryHelper.java
@@ -11,7 +11,7 @@
// 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.query2.engine;
+package com.google.devtools.build.lib.query2.testutil;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableSet;
@@ -20,8 +20,8 @@
import com.google.devtools.build.lib.events.EventCollector;
import com.google.devtools.build.lib.events.EventKind;
import com.google.devtools.build.lib.events.Reporter;
-import com.google.devtools.build.lib.query2.engine.AbstractQueryTest.QueryHelper;
import com.google.devtools.build.lib.query2.engine.QueryEnvironment.Setting;
+import com.google.devtools.build.lib.query2.testutil.AbstractQueryTest.QueryHelper;
import com.google.devtools.build.lib.testutil.MoreAsserts;
import java.util.Arrays;
import java.util.List;
diff --git a/src/test/java/com/google/devtools/build/lib/query2/engine/AbstractQueryTest.java b/src/test/java/com/google/devtools/build/lib/query2/testutil/AbstractQueryTest.java
similarity index 99%
rename from src/test/java/com/google/devtools/build/lib/query2/engine/AbstractQueryTest.java
rename to src/test/java/com/google/devtools/build/lib/query2/testutil/AbstractQueryTest.java
index a406661..8f21bb4 100644
--- a/src/test/java/com/google/devtools/build/lib/query2/engine/AbstractQueryTest.java
+++ b/src/test/java/com/google/devtools/build/lib/query2/testutil/AbstractQueryTest.java
@@ -11,7 +11,7 @@
// 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.query2.engine;
+package com.google.devtools.build.lib.query2.testutil;
import static com.google.common.truth.Truth.assertThat;
import static com.google.common.truth.Truth.assertWithMessage;
@@ -36,9 +36,13 @@
import com.google.devtools.build.lib.graph.Node;
import com.google.devtools.build.lib.packages.BuildType;
import com.google.devtools.build.lib.packages.util.MockToolsConfig;
-import com.google.devtools.build.lib.query2.engine.AbstractQueryTest.QueryHelper.ResultAndTargets;
+import com.google.devtools.build.lib.query2.engine.DigraphQueryEvalResult;
+import com.google.devtools.build.lib.query2.engine.QueryEnvironment;
import com.google.devtools.build.lib.query2.engine.QueryEnvironment.Setting;
import com.google.devtools.build.lib.query2.engine.QueryEnvironment.ThreadSafeMutableSet;
+import com.google.devtools.build.lib.query2.engine.QueryEvalResult;
+import com.google.devtools.build.lib.query2.engine.QueryException;
+import com.google.devtools.build.lib.query2.testutil.AbstractQueryTest.QueryHelper.ResultAndTargets;
import com.google.devtools.build.lib.testutil.TestConstants;
import com.google.devtools.build.lib.testutil.TestRuleClassProvider;
import com.google.devtools.build.lib.vfs.Path;
diff --git a/src/test/java/com/google/devtools/build/lib/query2/testutil/BUILD b/src/test/java/com/google/devtools/build/lib/query2/testutil/BUILD
new file mode 100644
index 0000000..a052d29
--- /dev/null
+++ b/src/test/java/com/google/devtools/build/lib/query2/testutil/BUILD
@@ -0,0 +1,49 @@
+load("@rules_java//java:defs.bzl", "java_library")
+
+package(
+ default_testonly = 1,
+ default_visibility = [
+ "//src/test/java/com/google/devtools/build/lib:__subpackages__",
+ ],
+)
+
+licenses(["notice"]) # Apache 2.0
+
+filegroup(
+ name = "srcs",
+ testonly = 0,
+ srcs = glob(["**"]),
+)
+
+java_library(
+ name = "testutil",
+ srcs = glob(["*.java"]),
+ deps = [
+ "//src/main/java/com/google/devtools/build/lib:build-base",
+ "//src/main/java/com/google/devtools/build/lib:events",
+ "//src/main/java/com/google/devtools/build/lib:filetype",
+ "//src/main/java/com/google/devtools/build/lib:io",
+ "//src/main/java/com/google/devtools/build/lib:packages",
+ "//src/main/java/com/google/devtools/build/lib/actions",
+ "//src/main/java/com/google/devtools/build/lib/cmdline",
+ "//src/main/java/com/google/devtools/build/lib/graph",
+ "//src/main/java/com/google/devtools/build/lib/query2",
+ "//src/main/java/com/google/devtools/build/lib/query2/common:abstract-blaze-query-env",
+ "//src/main/java/com/google/devtools/build/lib/query2/engine",
+ "//src/main/java/com/google/devtools/build/lib/rules/cpp",
+ "//src/main/java/com/google/devtools/build/lib/rules/java:java-implicit-attributes",
+ "//src/main/java/com/google/devtools/build/lib/vfs",
+ "//src/main/java/com/google/devtools/build/lib/vfs:pathfragment",
+ "//src/main/java/com/google/devtools/build/lib/vfs/inmemoryfs",
+ "//src/main/java/com/google/devtools/build/skyframe",
+ "//src/main/java/com/google/devtools/build/skyframe:skyframe-objects",
+ "//src/main/java/com/google/devtools/common/options",
+ "//src/test/java/com/google/devtools/build/lib:analysis_testutil",
+ "//src/test/java/com/google/devtools/build/lib:packages_testutil",
+ "//src/test/java/com/google/devtools/build/lib:testutil",
+ "//third_party:guava",
+ "//third_party:jsr305",
+ "//third_party:junit4",
+ "//third_party:truth",
+ ],
+)
diff --git a/src/test/java/com/google/devtools/build/lib/query2/PostAnalysisQueryHelper.java b/src/test/java/com/google/devtools/build/lib/query2/testutil/PostAnalysisQueryHelper.java
similarity index 96%
rename from src/test/java/com/google/devtools/build/lib/query2/PostAnalysisQueryHelper.java
rename to src/test/java/com/google/devtools/build/lib/query2/testutil/PostAnalysisQueryHelper.java
index 05a7a38..ba1be47 100644
--- a/src/test/java/com/google/devtools/build/lib/query2/PostAnalysisQueryHelper.java
+++ b/src/test/java/com/google/devtools/build/lib/query2/testutil/PostAnalysisQueryHelper.java
@@ -11,7 +11,7 @@
// 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.query2;
+package com.google.devtools.build.lib.query2.testutil;
import static com.google.devtools.build.lib.testutil.FoundationTestCase.failFastHandler;
@@ -25,15 +25,15 @@
import com.google.devtools.build.lib.packages.util.MockProtoSupport;
import com.google.devtools.build.lib.packages.util.MockToolsConfig;
import com.google.devtools.build.lib.pkgcache.PackageManager;
+import com.google.devtools.build.lib.query2.PostAnalysisQueryEnvironment;
import com.google.devtools.build.lib.query2.PostAnalysisQueryEnvironment.TopLevelConfigurations;
-import com.google.devtools.build.lib.query2.engine.AbstractQueryHelper;
-import com.google.devtools.build.lib.query2.engine.AbstractQueryTest.QueryHelper;
import com.google.devtools.build.lib.query2.engine.QueryEnvironment;
import com.google.devtools.build.lib.query2.engine.QueryEvalResult;
import com.google.devtools.build.lib.query2.engine.QueryException;
import com.google.devtools.build.lib.query2.engine.QueryParser;
import com.google.devtools.build.lib.query2.engine.QueryUtil;
import com.google.devtools.build.lib.query2.engine.QueryUtil.AggregateAllOutputFormatterCallback;
+import com.google.devtools.build.lib.query2.testutil.AbstractQueryTest.QueryHelper;
import com.google.devtools.build.lib.skyframe.SkyframeExecutor;
import com.google.devtools.build.lib.skyframe.SkyframeExecutorWrappingWalkableGraph;
import com.google.devtools.build.lib.testutil.Scratch;
@@ -95,7 +95,7 @@
return analysisHelper.getMockToolsConfig();
}
- boolean isWholeTestUniverse() {
+ public boolean isWholeTestUniverse() {
return wholeTestUniverse;
}
@@ -271,7 +271,7 @@
return packageManager;
}
- protected MockToolsConfig getMockToolsConfig() {
+ public MockToolsConfig getMockToolsConfig() {
return mockToolsConfig;
}
diff --git a/src/test/java/com/google/devtools/build/lib/query2/PostAnalysisQueryTest.java b/src/test/java/com/google/devtools/build/lib/query2/testutil/PostAnalysisQueryTest.java
similarity index 99%
rename from src/test/java/com/google/devtools/build/lib/query2/PostAnalysisQueryTest.java
rename to src/test/java/com/google/devtools/build/lib/query2/testutil/PostAnalysisQueryTest.java
index 048243c..9a261e4 100644
--- a/src/test/java/com/google/devtools/build/lib/query2/PostAnalysisQueryTest.java
+++ b/src/test/java/com/google/devtools/build/lib/query2/testutil/PostAnalysisQueryTest.java
@@ -11,7 +11,7 @@
// 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.query2;
+package com.google.devtools.build.lib.query2.testutil;
import static com.google.common.truth.Truth.assertThat;
import static com.google.devtools.build.lib.packages.Attribute.attr;
@@ -29,7 +29,7 @@
import com.google.devtools.build.lib.packages.Attribute;
import com.google.devtools.build.lib.packages.AttributeMap;
import com.google.devtools.build.lib.packages.Type;
-import com.google.devtools.build.lib.query2.engine.AbstractQueryTest;
+import com.google.devtools.build.lib.query2.PostAnalysisQueryEnvironment;
import com.google.devtools.build.lib.query2.engine.QueryEnvironment.QueryFunction;
import com.google.devtools.build.lib.query2.engine.QueryEnvironment.Setting;
import com.google.devtools.build.lib.query2.engine.QueryExpression;
@@ -617,6 +617,7 @@
public void testNodepDeps_False() throws Exception {}
// package_group instances have a null configuration and are filtered out by --host_deps=false.
+ @Override
@Test
public void testDefaultVisibilityReturnedInDeps_NonEmptyDependencyFilter() throws Exception {}
}
diff --git a/src/test/java/com/google/devtools/build/lib/query2/engine/SkyframeQueryHelper.java b/src/test/java/com/google/devtools/build/lib/query2/testutil/SkyframeQueryHelper.java
similarity index 96%
rename from src/test/java/com/google/devtools/build/lib/query2/engine/SkyframeQueryHelper.java
rename to src/test/java/com/google/devtools/build/lib/query2/testutil/SkyframeQueryHelper.java
index f871936..202afa3 100644
--- a/src/test/java/com/google/devtools/build/lib/query2/engine/SkyframeQueryHelper.java
+++ b/src/test/java/com/google/devtools/build/lib/query2/testutil/SkyframeQueryHelper.java
@@ -11,7 +11,7 @@
// 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.query2.engine;
+package com.google.devtools.build.lib.query2.testutil;
import static com.google.devtools.build.lib.packages.Rule.ALL_LABELS;
@@ -40,9 +40,15 @@
import com.google.devtools.build.lib.pkgcache.TargetPatternPreloader;
import com.google.devtools.build.lib.query2.QueryEnvironmentFactory;
import com.google.devtools.build.lib.query2.common.AbstractBlazeQueryEnvironment;
+import com.google.devtools.build.lib.query2.engine.QueryEnvironment;
import com.google.devtools.build.lib.query2.engine.QueryEnvironment.QueryFunction;
import com.google.devtools.build.lib.query2.engine.QueryEnvironment.ThreadSafeMutableSet;
+import com.google.devtools.build.lib.query2.engine.QueryEvalResult;
+import com.google.devtools.build.lib.query2.engine.QueryException;
+import com.google.devtools.build.lib.query2.engine.QueryParser;
+import com.google.devtools.build.lib.query2.engine.QueryUtil;
import com.google.devtools.build.lib.query2.engine.QueryUtil.AggregateAllOutputFormatterCallback;
+import com.google.devtools.build.lib.query2.engine.ThreadSafeOutputFormatterCallback;
import com.google.devtools.build.lib.rules.repository.RepositoryDelegatorFunction;
import com.google.devtools.build.lib.skyframe.BazelSkyframeExecutorConstants;
import com.google.devtools.build.lib.skyframe.PackageValue;