Migrate the `JavaStarlarkApiTest.starlarkJavaToJavaBinaryAttributes` test to Starlark

The test is removed from Bazel and added in `@rules_java`

PiperOrigin-RevId: 738576515
Change-Id: Id4ccc84502d327921669adeea0207b67e19f367e
diff --git a/java/test/common/rules/java_binary_tests.bzl b/java/test/common/rules/java_binary_tests.bzl
index 2a8f034..3b763f9 100644
--- a/java/test/common/rules/java_binary_tests.bzl
+++ b/java/test/common/rules/java_binary_tests.bzl
@@ -4,7 +4,9 @@
 load("@rules_testing//lib:truth.bzl", "matching")
 load("@rules_testing//lib:util.bzl", "util")
 load("//java:java_binary.bzl", "java_binary")
+load("//java:java_library.bzl", "java_library")
 load("//java/test/testutil:java_info_subject.bzl", "java_info_subject")
+load("//java/test/testutil:rules/forward_java_info.bzl", "java_info_forwarding_rule")
 
 def _test_java_binary_provides_binary_java_info(name):
     util.helper_target(java_binary, name = "bin", srcs = ["Main.java"])
@@ -53,11 +55,57 @@
         matching.file_basename_equals("redacted_file.properties"),
     )
 
+def _test_java_binary_attributes(name):
+    util.helper_target(
+        java_library,
+        name = name + "/jl_bottom_for_deps",
+        srcs = ["java/A.java"],
+    )
+    util.helper_target(
+        java_library,
+        name = name + "/jl_bottom_for_runtime_deps",
+        srcs = ["java/A2.java"],
+    )
+    util.helper_target(
+        java_info_forwarding_rule,
+        name = name + "/mya",
+        dep = name + "/jl_bottom_for_deps",
+    )
+    util.helper_target(
+        java_info_forwarding_rule,
+        name = name + "/myb",
+        dep = name + "/jl_bottom_for_runtime_deps",
+    )
+    util.helper_target(
+        java_binary,
+        name = name + "/binary",
+        srcs = ["java/B.java"],
+        main_class = "foo.A",
+        deps = [name + "/mya"],
+        runtime_deps = [name + "/myb"],
+    )
+
+    analysis_test(
+        name = name,
+        impl = _test_java_binary_attributes_impl,
+        target = name + "/binary",
+    )
+
+def _test_java_binary_attributes_impl(env, target):
+    assert_runtime_classpath = java_info_subject.from_target(env, target).compilation_info().runtime_classpath()
+
+    # Test that all bottom jars are on the runtime classpath.
+    assert_runtime_classpath.contains_at_least_predicates([
+        matching.file_basename_equals("jl_bottom_for_deps.jar"),
+        matching.file_basename_equals("jl_bottom_for_runtime_deps.jar"),
+    ])
+
 def java_binary_tests(name):
     test_suite(
         name = name,
         tests = [
             _test_java_binary_provides_binary_java_info,
             _test_stamp_conversion_does_not_override_int,
+            _test_java_binary_attributes,
         ],
     )