Migrate the `JavaStarlarkApiTest.testJavaCommonCompileExposesOutputJarProvider` test to Starlark The test is removed from Bazel and added in rules_java PiperOrigin-RevId: 735290781 Change-Id: Ifd457722d746da45bbb503d100af48a0d2af0c0e
diff --git a/java/test/common/java_common_tests.bzl b/java/test/common/java_common_tests.bzl index 9555ecd..1fb9b44 100644 --- a/java/test/common/java_common_tests.bzl +++ b/java/test/common/java_common_tests.bzl
@@ -277,6 +277,29 @@ assert_output.jdeps().short_path_equals("{package}/lib{name}.jdeps") assert_output.compile_jdeps().short_path_equals("{package}/lib{name}-hjar.jdeps") +def _test_compile_exposes_outputs_provider(name): + util.helper_target( + custom_library, + name = name + "/dep", + srcs = ["Main.java"], + ) + + analysis_test( + name = name, + impl = _test_compile_exposes_outputs_provider_impl, + target = name + "/dep", + ) + +def _test_compile_exposes_outputs_provider_impl(env, target): + assert_output = java_info_subject.from_target(env, target).outputs().jars().singleton() + + assert_output.class_jar().short_path_equals("{package}/lib{name}.jar") + assert_output.compile_jar().short_path_equals("{package}/lib{name}-hjar.jar") + assert_output.source_jars().contains_exactly(["{package}/lib{name}-src.jar"]) + assert_output.jdeps().short_path_equals("{package}/lib{name}.jdeps") + assert_output.native_headers_jar().short_path_equals("{package}/lib{name}-native-header.jar") + assert_output.compile_jdeps().short_path_equals("{package}/lib{name}-hjar.jdeps") + def java_common_tests(name): test_suite( name = name, @@ -290,5 +313,6 @@ _test_compile_bootclasspath, _test_compile_override_with_empty_bootclasspath, _test_exposes_java_info_as_provider, + _test_compile_exposes_outputs_provider, ], )
diff --git a/java/test/testutil/java_info_subject.bzl b/java/test/testutil/java_info_subject.bzl index de2d218..246b56e 100644 --- a/java/test/testutil/java_info_subject.bzl +++ b/java/test/testutil/java_info_subject.bzl
@@ -66,6 +66,7 @@ source_jars = lambda: subjects.depset_file(java_output.source_jars if hasattr(java_output.source_jars, "to_list") else depset(java_output.source_jars), meta.derive("source_jars")), jdeps = lambda: subjects.file(java_output.jdeps, meta.derive("jdeps")), compile_jdeps = lambda: subjects.file(java_output.compile_jdeps, meta.derive("compile_jdeps")), + native_headers_jar = lambda: subjects.file(java_output.native_headers_jar, meta.derive("native_headers_jar")), ) return public