Migrate the `JavaStarlarkApiTest.starlarkJavaToJavaImportAttributes` test to Starlark

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

PiperOrigin-RevId: 738605511
Change-Id: If27e7c863f45b5853a57ad1cabeb21a198d58244
diff --git a/java/test/common/rules/BUILD b/java/test/common/rules/BUILD
index e46aa94..0639d29 100644
--- a/java/test/common/rules/BUILD
+++ b/java/test/common/rules/BUILD
@@ -1,4 +1,5 @@
 load(":java_binary_tests.bzl", "java_binary_tests")
+load(":java_import_tests.bzl", "java_import_tests")
 load(":java_library_tests.bzl", "java_library_tests")
 load(":java_plugin_tests.bzl", "java_plugin_tests")
 load(":merge_attrs_tests.bzl", "merge_attrs_test_suite")
@@ -10,3 +11,5 @@
 java_plugin_tests(name = "java_plugin_tests")
 
 java_library_tests(name = "java_library_tests")
+
+java_import_tests(name = "java_import_tests")
diff --git a/java/test/common/rules/java_import_tests.bzl b/java/test/common/rules/java_import_tests.bzl
new file mode 100644
index 0000000..ca54e7f
--- /dev/null
+++ b/java/test/common/rules/java_import_tests.bzl
@@ -0,0 +1,62 @@
+"""Tests for the java_import rule"""
+
+load("@rules_testing//lib:analysis_test.bzl", "analysis_test", "test_suite")
+load("@rules_testing//lib:truth.bzl", "matching")
+load("@rules_testing//lib:util.bzl", "util")
+load("//java:java_import.bzl", "java_import")
+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_import_attributes(name):
+    target_name = name + "/import"
+    util.helper_target(
+        java_library,
+        name = target_name + "/jl_bottom_for_deps",
+        srcs = ["java/A.java"],
+    )
+    util.helper_target(
+        java_library,
+        name = target_name + "/jl_bottom_for_runtime_deps",
+        srcs = ["java/A2.java"],
+    )
+    util.helper_target(
+        java_info_forwarding_rule,
+        name = target_name + "/mya",
+        dep = target_name + "/jl_bottom_for_deps",
+    )
+    util.helper_target(
+        java_info_forwarding_rule,
+        name = target_name + "/myb",
+        dep = target_name + "/jl_bottom_for_runtime_deps",
+    )
+    util.helper_target(
+        java_import,
+        name = target_name,
+        jars = ["B.jar"],
+        runtime_deps = [target_name + "/myb"],
+        deps = [target_name + "/mya"],
+    )
+
+    analysis_test(
+        name = name,
+        impl = _test_java_import_attributes_impl,
+        target = target_name,
+    )
+
+def _test_java_import_attributes_impl(env, target):
+    assert_runtime_jars = java_info_subject.from_target(env, target).compilation_args().transitive_runtime_jars()
+
+    # Test that all bottom jars are on the runtime classpath.
+    assert_runtime_jars.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_import_tests(name):
+    test_suite(
+        name = name,
+        tests = [
+            _test_java_import_attributes,
+        ],
+    )