Adds a test for compilation_outputs output group to java_binary_tests.bzl

PiperOrigin-RevId: 868573491
Change-Id: I2188753f333db240945ff2b7e250adf8f07fe2a9
diff --git a/test/java/common/rules/java_binary_tests.bzl b/test/java/common/rules/java_binary_tests.bzl
index 97a8571..9ddadbd 100644
--- a/test/java/common/rules/java_binary_tests.bzl
+++ b/test/java/common/rules/java_binary_tests.bzl
@@ -167,6 +167,33 @@
         matching.str_matches("-Djava.library.path=${JAVA_RUNFILES}/*/test_java_binary_propagates_direct_native_libraries"),
     )
 
+def _test_java_compile_only(name):
+    util.helper_target(
+        java_library,
+        name = name + "/hello_library",
+        srcs = ["HelloLibrary.java"],
+    )
+    util.helper_target(
+        java_binary,
+        name = name + "/main",
+        srcs = ["Main.java"],
+        main_class = "main.Main",
+        deps = [name + "/hello_library"],
+    )
+
+    analysis_test(
+        name = name,
+        impl = _test_java_compile_only_impl,
+        target = name + "/main",
+    )
+
+def _test_java_compile_only_impl(env, target):
+    # Assert that the compilation output is exactly main jar, and does not contain a variant of
+    # hello_library.jar.
+    env.expect.that_target(target).output_group(
+        "compilation_outputs",
+    ).contains_exactly(["{package}/{name}.jar"])
+
 def java_binary_tests(name):
     test_suite(
         name = name,
@@ -175,5 +202,6 @@
             _test_stamp_conversion_does_not_override_int,
             _test_java_binary_attributes,
             _test_java_binary_propagates_direct_native_libraries,
+            _test_java_compile_only,
         ],
     )