Add tests for querying buildfiles() of a target whose package loads a bzl file whose own package cannot be loaded.

The case of the bzl file's package having a missing bzl file was not properly handled by https://github.com/bazelbuild/bazel/commit/23f171e2208700dc2f2f65f5ccb32bacd7aec87d. Strangely, when the package has bad syntax, we are able to construct the package, and so that test was already ok.

PiperOrigin-RevId: 389897386
diff --git a/src/test/java/com/google/devtools/build/lib/query2/testutil/AbstractQueryTest.java b/src/test/java/com/google/devtools/build/lib/query2/testutil/AbstractQueryTest.java
index c106406..bdaa988 100644
--- a/src/test/java/com/google/devtools/build/lib/query2/testutil/AbstractQueryTest.java
+++ b/src/test/java/com/google/devtools/build/lib/query2/testutil/AbstractQueryTest.java
@@ -1780,6 +1780,24 @@
   }
 
   @Test
+  public void bzlPackageBadDueToBrokenLoad() throws Exception {
+    writeFile("foo/BUILD", "load('//bar:bar.bzl', 'sym')");
+    writeFile("bar/BUILD", "load('//noexist:noexist.bzl', 'bad')");
+    writeFile("bar/bar.bzl", "sym = 0");
+    assertThat(evalToListOfStrings("buildfiles(//foo:BUILD)"))
+        .containsExactly("//foo:BUILD", "//bar:bar.bzl", "//bar:BUILD");
+  }
+
+  @Test
+  public void bzlPackageBadDueToBrokenSyntax() throws Exception {
+    writeFile("foo/BUILD", "load('//bar:bar.bzl', 'sym')");
+    writeFile("bar/BUILD", "malformed syntax");
+    writeFile("bar/bar.bzl", "sym = 0");
+    assertThat(evalToListOfStrings("buildfiles(//foo:BUILD)"))
+        .containsExactly("//foo:BUILD", "//bar:bar.bzl", "//bar:BUILD");
+  }
+
+  @Test
   public void testTargetsFromBuildfilesAndRealTargets() throws Exception {
     writeFile(
         "foo/BUILD", "load('//baz:baz.bzl', 'x')", "sh_library(name = 'foo', deps = ['//baz'])");
@@ -2122,4 +2140,3 @@
     String getLabel(T target);
   }
 }
-
diff --git a/src/test/java/com/google/devtools/build/lib/query2/testutil/PostAnalysisQueryTest.java b/src/test/java/com/google/devtools/build/lib/query2/testutil/PostAnalysisQueryTest.java
index e658f48..24c22b5 100644
--- a/src/test/java/com/google/devtools/build/lib/query2/testutil/PostAnalysisQueryTest.java
+++ b/src/test/java/com/google/devtools/build/lib/query2/testutil/PostAnalysisQueryTest.java
@@ -724,6 +724,12 @@
   public void testBuildfilesWithDuplicates() {}
 
   @Override
+  public void bzlPackageBadDueToBrokenLoad() {}
+
+  @Override
+  public void bzlPackageBadDueToBrokenSyntax() {}
+
+  @Override
   public void testTargetsFromBuildfilesAndRealTargets() {}
 
   // siblings() operator.