9090local_repository = use_repo_rule("@bazel_tools//tools/build_defs/repo:local.bzl", "local_repository")
9191local_repository(name = 'pandas', path = '${repo2} ')
9292EOF
93+ add_rules_shell " MODULE.bazel"
9394
9495 cat > zoo/BUILD << EOF
96+ load("@rules_shell//shell:sh_binary.bzl", "sh_binary")
97+
9598sh_binary(
9699 name = "dumper",
97100 srcs = ["dumper.sh"],
@@ -130,6 +133,8 @@ function test_local_repository_java() {
130133
131134 mkdir -p carnivore
132135 cat > carnivore/BUILD << EOF
136+ load("@rules_java//java:java_library.bzl", "java_library")
137+
133138java_library(
134139 name = "mongoose",
135140 srcs = ["Mongoose.java"],
150155local_repository = use_repo_rule("@bazel_tools//tools/build_defs/repo:local.bzl", "local_repository")
151156local_repository(name = 'endangered', path = '$repo2 ')
152157EOF
153-
158+ add_rules_java " MODULE.bazel "
154159 mkdir -p zoo
155160 cat > zoo/BUILD << EOF
161+ load("@rules_java//java:java_binary.bzl", "java_binary")
162+
156163java_binary(
157164 name = "ball-pit",
158165 srcs = ["BallPit.java"],
178185}
179186
180187function test_non_existent_external_ref() {
188+ add_rules_java " MODULE.bazel"
181189 mkdir -p zoo
182190 touch zoo/BallPit.java
183191 cat > zoo/BUILD << EOF
192+ load("@rules_java//java:java_binary.bzl", "java_binary")
193+
184194java_binary(
185195 name = "ball-pit",
186196 srcs = ["BallPit.java"],
@@ -236,8 +246,11 @@ new_local_repository(
236246 build_file = '//:BUILD.carnivore',
237247)
238248EOF
249+ add_rules_java " MODULE.bazel"
239250
240251 cat > BUILD.carnivore << EOF
252+ load("@rules_java//java:java_library.bzl", "java_library")
253+
241254java_library(
242255 name = "mongoose",
243256 srcs = ["carnivore/Mongoose.java"],
@@ -251,17 +264,22 @@ new_local_repository(
251264 name = 'endangered',
252265 path = '$project_dir ',
253266 build_file_content = """
267+ load("@rules_java//java:java_library.bzl", "java_library")
268+
254269java_library(
255270 name = "mongoose",
256271 srcs = ["carnivore/Mongoose.java"],
257272 visibility = ["//visibility:public"],
258273)""",
259274)
260275EOF
276+ add_rules_java " MODULE.bazel"
261277 fi
262278
263279 mkdir -p zoo
264280 cat > zoo/BUILD << EOF
281+ load("@rules_java//java:java_binary.bzl", "java_binary")
282+
265283java_binary(
266284 name = "ball-pit",
267285 srcs = ["BallPit.java"],
@@ -314,6 +332,8 @@ void greet() {
314332}
315333EOF
316334 cat > $external_ws /BUILD << EOF
335+ load("@rules_cc//cc:cc_library.bzl", "cc_library")
336+
317337cc_library(
318338 name = "greet_lib",
319339 srcs = ["greet_lib.cc"],
@@ -334,6 +354,8 @@ int main() {
334354}
335355EOF
336356 cat > BUILD << EOF
357+ load("@rules_cc//cc:cc_binary.bzl", "cc_binary")
358+
337359cc_binary(
338360 name = "greeter",
339361 srcs = ["greeter.cc"],
@@ -347,6 +369,7 @@ local_repository(
347369 path = "$external_ws ",
348370)
349371EOF
372+ add_rules_cc " MODULE.bazel"
350373
351374 bazel fetch //:greeter || fail " Fetch failed"
352375 bazel run //:greeter >& $TEST_log || fail " Failed to run greeter"
@@ -367,6 +390,8 @@ int x() {
367390}
368391EOF
369392 cat > $clib /BUILD << EOF
393+ load("@rules_cc//cc:cc_library.bzl", "cc_library")
394+
370395cc_library(
371396 name = "clib",
372397 srcs = ["clib.cc"],
@@ -383,7 +408,10 @@ local_repository(
383408 path = "$clib ",
384409)
385410EOF
411+ add_rules_cc " MODULE.bazel"
386412 cat > BUILD << EOF
413+ load("@rules_cc//cc:cc_binary.bzl", "cc_binary")
414+
387415cc_binary(
388416 name = "printer",
389417 srcs = ["printer.cc"],
@@ -414,9 +442,16 @@ function test_repository_package_query() {
414442local_repository = use_repo_rule("@bazel_tools//tools/build_defs/repo:local.bzl", "local_repository")
415443local_repository(name='b', path='b')
416444EOF
417- echo " sh_library(name='a', deps=['@b//b'])" > a/BUILD
445+ add_rules_shell " MODULE.bazel"
446+ cat > a/BUILD << EOF
447+ load("@rules_shell//shell:sh_library.bzl", "sh_library")
448+ sh_library(name='a', deps=['@b//b'])
449+ EOF
418450 touch b/REPO.bazel
419- echo " sh_library(name='b')" > b/b/BUILD
451+ cat > b/b/BUILD << EOF
452+ load("@rules_shell//shell:sh_library.bzl", "sh_library")
453+ sh_library(name='b')
454+ EOF
420455 bazel query --output package " deps(//a)" >& $TEST_log || fail " query failed"
421456 expect_log " a"
422457 expect_log " @b//b"
@@ -428,10 +463,17 @@ function test_repository_buildfiles_package_query() {
428463local_repository = use_repo_rule("@bazel_tools//tools/build_defs/repo:local.bzl", "local_repository")
429464local_repository(name='b', path='b')
430465EOF
431- echo " sh_library(name='a', deps=['@b//b'])" > a/BUILD
466+ add_rules_shell " MODULE.bazel"
467+ cat > a/BUILD << EOF
468+ load("@rules_shell//shell:sh_library.bzl", "sh_library")
469+
470+ sh_library(name='a', deps=['@b//b'])
471+ EOF
432472 touch b/REPO.bazel b/c/BUILD
433473 cat > b/b/BUILD << EOF
434474load('//c:lib.bzl', 'x')
475+ load("@rules_shell//shell:sh_library.bzl", "sh_library")
476+
435477sh_library(
436478 name = "b"
437479)
737779function test_python_in_remote_repository() {
738780 local r=$TEST_TMPDIR /r
739781 rm -fr $r
782+ add_rules_python " MODULE.bazel"
740783 mkdir -p $r /bin
741784 touch $r /REPO.bazel
742785 cat > $r /bin/BUILD << EOF
786+ load("@rules_python//python:py_binary.bzl", "py_binary")
743787package(default_visibility=["//visibility:public"])
744788py_binary(name="bin", srcs=["bin.py"], deps=["//lib:lib"])
745789EOF
754798
755799 mkdir -p $r /lib
756800 cat > $r /lib/BUILD << EOF
801+ load("@rules_python//python:py_library.bzl", "py_library")
757802package(default_visibility=["//visibility:public"])
758803py_library(name="lib", srcs=["lib.py"])
759804EOF
@@ -849,12 +894,15 @@ EOF
849894}
850895
851896function test_slash_in_repo_name() {
897+ add_rules_cc " MODULE.bazel"
852898 local r=$TEST_TMPDIR /r
853899 rm -fr $r
854900 mkdir -p $r /a
855901
856902 touch $r /a/REPO.bazel
857903 cat > $r /a/BUILD << EOF
904+ load("@rules_cc//cc:cc_binary.bzl", "cc_binary")
905+
858906cc_binary(
859907 name = "bin",
860908 srcs = ["bin.cc"],
@@ -881,8 +929,11 @@ function test_remote_includes() {
881929 rm -fr $remote
882930 mkdir -p $remote /inc
883931
932+ add_rules_cc " MODULE.bazel"
884933 touch $remote /REPO.bazel
885934 cat > $remote /BUILD << EOF
935+ load("@rules_cc//cc:cc_library.bzl", "cc_library")
936+
886937cc_library(
887938 name = "bar",
888939 srcs = ["bar.cc"],
@@ -908,6 +959,8 @@ local_repository(
908959)
909960EOF
910961cat > BUILD << EOF
962+ load("@rules_cc//cc:cc_binary.bzl", "cc_binary")
963+
911964cc_binary(
912965 name = "foo",
913966 srcs = ["foo.cc"],
@@ -944,15 +997,20 @@ new_local_repository(
944997 build_file="//:BUILD.r"
945998)
946999EOF
1000+ add_rules_cc " MODULE.bazel"
9471001
9481002 touch BUILD
9491003 cat > BUILD.r << EOF
1004+ load("@rules_cc//cc:cc_library.bzl", "cc_library")
1005+
9501006cc_library(name = "a", srcs = ["a.cc"])
9511007EOF
9521008
9531009 bazel build @r//:a || fail " build failed"
9541010
9551011 cat > BUILD.r << EOF
1012+ load("@rules_cc//cc:cc_library.bzl", "cc_library")
1013+
9561014cc_library(name = "a", srcs = ["a.cc", "b.cc"])
9571015EOF
9581016
@@ -1166,6 +1224,7 @@ EOF
11661224# Creates an indirect dependency on X from A and make sure the error message
11671225# refers to the correct label, both in an external repository and not.
11681226function test_indirect_dep_message() {
1227+ add_rules_java " MODULE.bazel"
11691228 local external_dir=$TEST_TMPDIR /ext-dir
11701229 mkdir -p a b $external_dir /x
11711230 cat > a/A.java << EOF
@@ -1180,6 +1239,8 @@ public class A {
11801239}
11811240EOF
11821241 cat > a/BUILD << EOF
1242+ load("@rules_java//java:java_library.bzl", "java_library")
1243+
11831244java_binary(
11841245 name = "a",
11851246 main_class = "a.A",
@@ -1199,6 +1260,8 @@ public class B {
11991260}
12001261EOF
12011262 cat > b/BUILD << EOF
1263+ load("@rules_java//java:java_library.bzl", "java_library")
1264+
12021265java_library(
12031266 name = "b",
12041267 srcs = ["B.java"],
@@ -1220,6 +1283,8 @@ public class X {
12201283}
12211284EOF
12221285 cat > $external_dir /x/BUILD << EOF
1286+ load("@rules_java//java:java_library.bzl", "java_library")
1287+
12231288java_library(
12241289 name = "x",
12251290 srcs = ["X.java"],
@@ -1284,7 +1349,10 @@ EOF
12841349local_repository = use_repo_rule("@bazel_tools//tools/build_defs/repo:local.bzl", "local_repository")
12851350local_repository(name = 'blue', path = "${repo2} ")
12861351EOF
1352+ add_rules_shell " MODULE.bazel"
12871353 cat > green/BUILD << EOF
1354+ load("@rules_shell//shell:sh_binary.bzl", "sh_binary")
1355+
12881356sh_binary(
12891357 name = "run-the-thing",
12901358 srcs = ["@blue//blue:do-the-thing"],
@@ -1304,6 +1372,8 @@ function test_public_includes_main_repo_from_external_dep() {
13041372 repo2=${new_workspace_dir}
13051373 mkdir -p blue
13061374 cat > blue/BUILD << EOF
1375+ load("@rules_shell//shell:sh_binary.bzl", "sh_binary")
1376+
13071377sh_binary(
13081378 name = "run-the-thing",
13091379 srcs = ["@//green:do-the-thing"],
@@ -1316,6 +1386,7 @@ EOF
13161386local_repository = use_repo_rule("@bazel_tools//tools/build_defs/repo:local.bzl", "local_repository")
13171387local_repository(name = 'blue', path = "${repo2} ")
13181388EOF
1389+ add_rules_shell " MODULE.bazel"
13191390 cat > green/BUILD << EOF
13201391package_group(
13211392 name = "everyone",
0 commit comments