blob: 8ea3ff2e317a3b0988d5a27cde428e8cda754af8 [file]
"""Tests for the Bazel java_import rule"""
load("@rules_testing//lib:analysis_test.bzl", "analysis_test", "test_suite")
load("@rules_testing//lib:util.bzl", "util")
load("//java:java_import.bzl", "java_import")
def _test_import_deps_checker_checking_mode(name):
util.helper_target(
java_import,
name = name + "/import-jar",
jars = ["import.jar"],
deps = [name + "/depjar"],
)
util.helper_target(
java_import,
name = name + "/depjar",
jars = ["depjar.jar"],
)
analysis_test(
name = name,
impl = _test_import_deps_checker_checking_mode_impl,
target = name + "/import-jar",
# The rules_java Starlark implementation is used from Bazel 8 on.
attr_values = {"tags": ["min_bazel_8"]},
)
def _test_import_deps_checker_checking_mode_impl(env, target):
# java_import only generates the jdeps proto, it never fails the build on incomplete deps.
assert_action = env.expect.that_target(target).action_named("ImportDepsChecker")
assert_action.contains_flag_values([
("--checking_mode", "silence"),
("--rule_label", "//{package}:{name}"),
])
def java_import_tests(name):
test_suite(
name = name,
tests = [
_test_import_deps_checker_checking_mode,
],
)