Creates _test_absolute_java_home_with_srcs for java_runtime() in java_runtime_tests.bzl PiperOrigin-RevId: 869144439 Change-Id: Iceebb816a7717371bf23e3f99e3c1d607254993a
diff --git a/test/java/common/rules/java_runtime_tests.bzl b/test/java/common/rules/java_runtime_tests.bzl index 948f0c3..deaa1d4 100644 --- a/test/java/common/rules/java_runtime_tests.bzl +++ b/test/java/common/rules/java_runtime_tests.bzl
@@ -1,6 +1,7 @@ """Tests for the java_runtime rule""" load("@rules_testing//lib:analysis_test.bzl", "analysis_test", "test_suite") +load("@rules_testing//lib:truth.bzl", "matching") load("@rules_testing//lib:util.bzl", "util") load("//java/toolchains:java_runtime.bzl", "java_runtime") load("//test/java/testutil:java_runtime_info_subject.bzl", "java_runtime_info_subject") @@ -32,10 +33,31 @@ "{workspace}/{package}/foo/b", ]) +def _test_absolute_java_home_with_srcs(name): + util.helper_target( + java_runtime, + name = name + "/jvm", + srcs = ["dummy.txt"], + java_home = "/absolute/path", + ) + + analysis_test( + name = name, + impl = _test_absolute_java_home_with_srcs_impl, + target = name + "/jvm", + expect_failure = True, + ) + +def _test_absolute_java_home_with_srcs_impl(env, target): + env.expect.that_target(target).failures().contains_predicate( + matching.str_matches("'java_home' with an absolute path requires 'srcs' to be empty."), + ) + def java_runtime_tests(name): test_suite( name = name, tests = [ _test_java_runtime_simple, + _test_absolute_java_home_with_srcs, ], )