Add a test for `java_binary` deps without srcs (ignore-relnotes) PiperOrigin-RevId: 973761700 Change-Id: Ibeda103175adfa41859052e7755fb6806accfc58
diff --git a/test/java/common/rules/java_binary_tests.bzl b/test/java/common/rules/java_binary_tests.bzl index b8add39..20c6ee0 100644 --- a/test/java/common/rules/java_binary_tests.bzl +++ b/test/java/common/rules/java_binary_tests.bzl
@@ -512,6 +512,32 @@ ("--output_deps_proto", "{bindir}/{package}/{name}.jdeps"), ]) +def _test_java_binary_deps_without_srcs(name): + util.helper_target( + java_binary, + name = name + "/a", + srcs = [], + deps = [name + "/b"], + main_class = "B", + ) + util.helper_target( + java_library, + name = name + "/b", + srcs = ["B.java"], + ) + + analysis_test( + name = name, + impl = _test_java_binary_deps_without_srcs_impl, + target = name + "/a", + expect_failure = True, + ) + +def _test_java_binary_deps_without_srcs_impl(env, target): + env.expect.that_target(target).failures().contains_predicate( + matching.str_matches("deps not allowed without srcs"), + ) + def java_binary_tests(name): test_suite( name = name, @@ -530,5 +556,6 @@ _test_java_binary_rule_in_sub_directory, _test_java_binary_duplicate_classpath_resources, _test_java_binary_jdeps, + _test_java_binary_deps_without_srcs, ], )