Migrate the `JavaInfoStarlarkApiTest.buildHelperCreateJavaInfoWithManifestProto_javaRuleOutputJarsProvider` test to Starlark

The test is removed from Bazel and added in rules_java

PiperOrigin-RevId: 734663045
Change-Id: I334f0d35f814f23c704de2d55dafd2bfa4f1d412
diff --git a/java/test/common/java_info_tests.bzl b/java/test/common/java_info_tests.bzl
index 4c26af5..2663f52 100644
--- a/java/test/common/java_info_tests.bzl
+++ b/java/test/common/java_info_tests.bzl
@@ -842,6 +842,26 @@
         "{package}/native_headers.jar",
     ])
 
+def _with_manifest_proto_test(name):
+    target_name = name + "/my_starlark_rule"
+    util.helper_target(
+        custom_java_info_rule,
+        name = target_name,
+        manifest_proto = "manifest.proto",
+        output_jar = target_name + "/my_starlark_rule_lib.jar",
+    )
+
+    analysis_test(
+        name = name,
+        impl = _with_manifest_proto_test_impl,
+        target = target_name,
+    )
+
+def _with_manifest_proto_test_impl(env, target):
+    java_info_subject.from_target(env, target).outputs().manifest_protos().contains_exactly([
+        "{package}/manifest.proto",
+    ])
+
 def java_info_tests(name):
     test_suite(
         name = name,
@@ -872,5 +892,6 @@
             _with_generated_jars_annotation_processing_test,
             _with_compile_jdeps_test,
             _with_native_headers_test,
+            _with_manifest_proto_test,
         ],
     )
diff --git a/java/test/testutil/java_info_subject.bzl b/java/test/testutil/java_info_subject.bzl
index aea927b..9a7ef7c 100644
--- a/java/test/testutil/java_info_subject.bzl
+++ b/java/test/testutil/java_info_subject.bzl
@@ -48,6 +48,7 @@
         jdeps = lambda: subjects.depset_file(depset([o.jdeps for o in actual.jars]), self.meta.derive("jdeps")),
         compile_jdeps = lambda: subjects.depset_file(depset([o.compile_jdeps for o in actual.jars]), self.meta.derive("compile_jdeps")),
         native_headers = lambda: subjects.depset_file(depset([o.native_headers_jar for o in actual.jars]), self.meta.derive("native_headers")),
+        manifest_protos = lambda: subjects.depset_file(depset([o.manifest_proto for o in actual.jars]), self.meta.derive("manifest_protos")),
     )
     return public
 
diff --git a/java/test/testutil/rules/custom_java_info_rule.bzl b/java/test/testutil/rules/custom_java_info_rule.bzl
index ad1bb65..55086e3 100644
--- a/java/test/testutil/rules/custom_java_info_rule.bzl
+++ b/java/test/testutil/rules/custom_java_info_rule.bzl
@@ -53,6 +53,7 @@
             generated_class_jar = ctx.file.generated_class_jar,
             generated_source_jar = ctx.file.generated_source_jar,
             native_headers_jar = ctx.file.native_headers_jar,
+            manifest_proto = ctx.file.manifest_proto,
         ),
     ]
 
@@ -72,6 +73,7 @@
         "generated_class_jar": attr.label(allow_single_file = True),
         "generated_source_jar": attr.label(allow_single_file = True),
         "native_headers_jar": attr.label(allow_single_file = True),
+        "manifest_proto": attr.label(allow_single_file = True),
         "use_ijar": attr.bool(default = False),
         "neverlink": attr.bool(default = False),
         "pack_sources": attr.bool(default = False),