`JavaStarlarkApiTest`: starlarkify `javaInfoConstructorWithNeverlink` This seems like a pretty trivial test. Do we even need it? Should I consider appropriate coverage or is that out of scope of the "Starlarkify the coverage we already have" task? PiperOrigin-RevId: 871294944 Change-Id: I404acea5e0734ee7f7cb83b1c932d096f9937cbe
diff --git a/test/java/common/java_info_tests.bzl b/test/java/common/java_info_tests.bzl index a646e11..ce82df2 100644 --- a/test/java/common/java_info_tests.bzl +++ b/test/java/common/java_info_tests.bzl
@@ -1261,6 +1261,24 @@ source_jars = target[JavaInfo].java_outputs[0].source_jars env.expect.that_str(type(source_jars)).equals(type(depset())) +def _java_info_constructor_with_neverlink_test(name): + target_name = name + "/my_starlark_rule" + util.helper_target( + custom_java_info_rule, + name = target_name, + output_jar = target_name + "/my_starlark_rule_lib.jar", + neverlink = True, + ) + + analysis_test( + name = name, + impl = _java_info_constructor_with_neverlink_test_impl, + target = target_name, + ) + +def _java_info_constructor_with_neverlink_test_impl(env, target): + java_info_subject.from_target(env, target).is_neverlink().equals(True) + def java_info_tests(name): test_suite( name = name, @@ -1305,5 +1323,6 @@ _annotation_processing_test, _compilation_info_test, _output_source_jars_returns_depset_test, + _java_info_constructor_with_neverlink_test, ], )
diff --git a/test/java/testutil/java_info_subject.bzl b/test/java/testutil/java_info_subject.bzl index e0ec805..8471706 100644 --- a/test/java/testutil/java_info_subject.bzl +++ b/test/java/testutil/java_info_subject.bzl
@@ -27,6 +27,7 @@ transitive_source_jars_list = lambda: subjects.collection(java_info.transitive_source_jars.to_list(), self.meta.derive("transitive_source_jars.to_list()")), runtime_output_jars = lambda: subjects.depset_file(java_info.runtime_output_jars, self.meta.derive("runtime_output_jars")), module_flags = lambda: _new_java_module_flags_subject(self.actual, self.meta), + is_neverlink = lambda: subjects.bool(getattr(java_info, "_neverlink", False), self.meta.derive("_neverlink")), ) return public