Make CompileOneDependencyIntegrationTest able to pass when rules_python is loaded.
The tests don't actually load rules_python when run as Bazel. The rules_python
code is only loaded into the tests when run as part of the internal Google
builds.
PiperOrigin-RevId: 587761675
Change-Id: I6c8180f183204da9d6535bab57fa53c277227abb
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 791f159..9c797dc 100644
--- a/src/test/java/com/google/devtools/build/lib/buildtool/BUILD
+++ b/src/test/java/com/google/devtools/build/lib/buildtool/BUILD
@@ -112,6 +112,7 @@
"//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/rules/python:PythonTestUtils",
"//src/test/java/com/google/devtools/build/lib/testutil:JunitUtils",
"//third_party:junit4",
"//third_party:truth",
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 ac1ab8f..49df8b8 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
@@ -14,6 +14,7 @@
package com.google.devtools.build.lib.buildtool;
import static com.google.common.truth.Truth.assertThat;
+import static com.google.devtools.build.lib.rules.python.PythonTestUtils.getPyLoad;
import static com.google.devtools.build.lib.testutil.MoreAsserts.assertContainsEvent;
import static org.junit.Assert.assertThrows;
@@ -39,7 +40,10 @@
addOptions("--compile_one_dependency");
// Make build super minimal.
addOptions("--nobuild_runfile_links");
- write("package/BUILD", "py_binary(name='foo', srcs=['foo.py'])");
+ write(
+ "package/BUILD", //
+ getPyLoad("py_binary"),
+ "py_binary(name='foo', srcs=['foo.py'])");
write("package/foo.py");
buildTarget("package/foo.py");
@@ -54,15 +58,17 @@
public void testBadPackage() throws Exception {
addOptions("--compile_one_dependency", "--keep_going");
- write("package/BUILD",
- "cc_binary(name='foo', srcs=['foo.cc'], malloc = '//base:system_malloc')",
- "invalidbuildsyntax");
- write("package/foo.cc",
- "#include <stdio.h>",
- "int main() {",
- " printf(\"Hello, world!\\n\");",
- " return 0;",
- "}");
+ write(
+ "package/BUILD",
+ "cc_binary(name='foo', srcs=['foo.cc'], malloc = '//base:system_malloc')",
+ "invalidbuildsyntax");
+ write(
+ "package/foo.cc",
+ "#include <stdio.h>",
+ "int main() {",
+ " printf(\"Hello, world!\\n\");",
+ " return 0;",
+ "}");
BuildFailedException e =
assertThrows(BuildFailedException.class, () -> buildTarget("package/foo.cc"));
assertThat(e)