Migrate the `JavaInfoStarlarkApiTest.buildHelperCreateJavaInfoWithJdeps_javaRuleOutputJarsProvider` test to Starlark

The test is removed from Bazel and added in rules_java

PiperOrigin-RevId: 734631344
Change-Id: I6b2d5254144a38620cf036d37aa3f0620824d1e3
diff --git a/java/test/common/java_info_tests.bzl b/java/test/common/java_info_tests.bzl
index 53f647d..d29bda4 100644
--- a/java/test/common/java_info_tests.bzl
+++ b/java/test/common/java_info_tests.bzl
@@ -735,6 +735,29 @@
     assert_compilation_args.transitive_runtime_jars().contains_exactly(["{package}/{name}/my_starlark_rule_lib.jar"])
     assert_compilation_args.transitive_compile_time_jars().contains_exactly(["{package}/{name}/my_starlark_rule_lib-stamped.jar"])
 
+def _with_jdeps_test(name):
+    target_name = name + "/my_starlark_rule"
+    util.helper_target(
+        custom_java_info_rule,
+        name = target_name,
+        jdeps = "my_jdeps.pb",
+        output_jar = target_name + "/my_starlark_rule_lib.jar",
+        source_jars = ["my_starlark_rule_src.jar"],
+    )
+
+    analysis_test(
+        name = name,
+        impl = _with_jdeps_test_impl,
+        target = target_name,
+    )
+
+def _with_jdeps_test_impl(env, target):
+    assert_outputs = java_info_subject.from_target(env, target).outputs()
+
+    assert_outputs.class_output_jars().contains_exactly(["{package}/{name}/my_starlark_rule_lib.jar"])
+    assert_outputs.source_output_jars().contains_exactly(["{package}/my_starlark_rule_src.jar"])
+    assert_outputs.jdeps().contains_exactly(["{package}/my_jdeps.pb"])
+
 def java_info_tests(name):
     test_suite(
         name = name,
@@ -760,5 +783,6 @@
             _with_plugins_via_exports_test,
             _with_plugins_test,
             _with_stamped_jar_test,
+            _with_jdeps_test,
         ],
     )
diff --git a/java/test/testutil/java_info_subject.bzl b/java/test/testutil/java_info_subject.bzl
index 66a2256..f111999 100644
--- a/java/test/testutil/java_info_subject.bzl
+++ b/java/test/testutil/java_info_subject.bzl
@@ -43,6 +43,7 @@
         jars = lambda: _new_java_outputs_collection_subject(actual.jars, self.meta.derive("jars")),
         class_output_jars = lambda: subjects.depset_file(depset([o.class_jar for o in actual.jars]), self.meta.derive("class_output_jars")),
         source_output_jars = lambda: subjects.depset_file(source_jars_depset, self.meta.derive("source_output_jars")),
+        jdeps = lambda: subjects.depset_file(depset([o.jdeps for o in actual.jars]), self.meta.derive("jdeps")),
     )
     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 1cd2b06..547693a 100644
--- a/java/test/testutil/rules/custom_java_info_rule.bzl
+++ b/java/test/testutil/rules/custom_java_info_rule.bzl
@@ -48,6 +48,7 @@
             exported_plugins = dp_exported_plugins,
             native_libraries = dp_libs,
             neverlink = ctx.attr.neverlink,
+            jdeps = ctx.file.jdeps,
         ),
     ]
 
@@ -62,6 +63,7 @@
         "dep_exports": attr.label_list(),
         "dep_exported_plugins": attr.label_list(),
         "cc_dep": attr.label_list(),
+        "jdeps": attr.label(allow_single_file = True),
         "use_ijar": attr.bool(default = False),
         "neverlink": attr.bool(default = False),
         "pack_sources": attr.bool(default = False),