Add a test for `java_test` with inner test class. (ignore-relnotes) PiperOrigin-RevId: 958229152 Change-Id: I0398c77612560dfbddb907b7fb72c7f9fe2a08e7
diff --git a/test/java/common/rules/common_launcher_java_binary_tests.bzl b/test/java/common/rules/common_launcher_java_binary_tests.bzl index ac4baac..dc3d18d 100644 --- a/test/java/common/rules/common_launcher_java_binary_tests.bzl +++ b/test/java/common/rules/common_launcher_java_binary_tests.bzl
@@ -295,6 +295,27 @@ expected = "'Main$Inner'" # shell-quoted expect_that_executable.of_target(env, target).java_start_class().equals(expected) +def _test_java_test_inner_class(name): + util.helper_target( + java_test, + name = name + "/inner", + test_class = "Outer$Inner", + ) + + analysis_test( + name = name, + attrs = {"_windows_constraints": attr.label_list(default = ["@platforms//os:windows"])}, + impl = _test_java_test_inner_class_impl, + target = name + "/inner", + ) + +def _test_java_test_inner_class_impl(env, target): + if helper.is_target_platform_windows(env.ctx): + expected = "Outer$Inner" # unquoted on windows + else: + expected = "'Outer$Inner'" # shell-quoted + expect_that_executable.of_target(env, target).test_suite().equals(expected) + def java_binary_launcher_tests(name): test_suite( name = name, @@ -310,5 +331,6 @@ _test_java_test_has_assertions_enabled, _test_java_binary_native_library_path_includes_transitive_deps, _test_java_binary_inner_class, + _test_java_test_inner_class, ], )