| 1234567891011121314151617181920212223242526272829303132333435 |
- # Part of the Carbon Language project, under the Apache License v2.0 with LLVM
- # Exceptions. See /LICENSE for license information.
- # SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
- """Rule for a lit test."""
- def glob_lit_tests(driver, data, test_file_exts, **kwargs):
- """Runs `lit` on test_dir.
- `lit` reference:
- https://llvm.org/docs/CommandGuide/lit.html
- Args:
- driver: The path to the lit config.
- data: A list of tools to provide to the tests. These will be aliased for
- execution.
- test_file_exts: A list of extensions to use for tests.
- **kwargs: Any additional parameters for the generated py_test.
- """
- test_files = native.glob(
- ["**"],
- exclude_directories = 1,
- )
- data.append("@llvm-project//llvm:lit")
- for f in test_files:
- if f.split(".")[-1] not in test_file_exts:
- continue
- native.py_test(
- name = "%s.test" % f,
- srcs = ["//bazel/testing:lit_test.py"],
- main = "//bazel/testing:lit_test.py",
- data = data + [driver, f],
- args = ["--package_name=%s" % native.package_name(), "--"],
- **kwargs
- )
|