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)