92 lines
1.8 KiB
Python
92 lines
1.8 KiB
Python
load("@rules_python//python:defs.bzl", "py_binary", "py_library", "py_test")
|
|
load("@py_deps//:requirements.bzl", "requirement")
|
|
|
|
py_test(
|
|
name = "pytest",
|
|
srcs = glob(["tests/*.py"]),
|
|
data = glob(["tests/support/**"]),
|
|
main = "tests/run_pytest.py",
|
|
deps = [
|
|
"//pylib/anki",
|
|
requirement("pytest"),
|
|
],
|
|
)
|
|
|
|
py_test(
|
|
name = "mypy",
|
|
srcs = [
|
|
"tests/run_mypy.py",
|
|
],
|
|
args = [
|
|
"anki",
|
|
"$(location mypy.ini)",
|
|
"$(location //python/stubs:extendsitepkgs)",
|
|
],
|
|
data = [
|
|
"mypy.ini",
|
|
"//python/stubs",
|
|
"//python/stubs:extendsitepkgs",
|
|
],
|
|
env = {"EXTRA_SITE_PACKAGES": "$(location //python/stubs)"},
|
|
main = "tests/run_mypy.py",
|
|
deps = [
|
|
"//pylib/anki",
|
|
"//pylib/anki:proto",
|
|
requirement("mypy"),
|
|
],
|
|
)
|
|
|
|
py_test(
|
|
name = "pylint",
|
|
srcs = [
|
|
"tests/run_pylint.py",
|
|
],
|
|
args = [
|
|
"anki",
|
|
"$(location .pylintrc)",
|
|
],
|
|
data = [".pylintrc"],
|
|
main = "tests/run_pylint.py",
|
|
deps = [
|
|
"//pylib/anki",
|
|
requirement("pylint"),
|
|
],
|
|
)
|
|
|
|
py_test(
|
|
name = "format_check",
|
|
srcs = [
|
|
"//pylib/tools:py_source_files",
|
|
"//pylib/anki:py_source_files",
|
|
] + glob([
|
|
"tests/**/*.py",
|
|
]),
|
|
args = [
|
|
"$(location .isort.cfg)",
|
|
],
|
|
data = [".isort.cfg"],
|
|
main = "tests/run_format.py",
|
|
deps = [
|
|
requirement("black"),
|
|
requirement("isort"),
|
|
],
|
|
)
|
|
|
|
py_binary(
|
|
name = "format",
|
|
srcs = [
|
|
"tests/run_format.py",
|
|
],
|
|
args = [
|
|
"$(location .isort.cfg)",
|
|
"fix",
|
|
],
|
|
data = [".isort.cfg"],
|
|
main = "tests/run_format.py",
|
|
tags = ["manual"],
|
|
deps = [
|
|
requirement("black"),
|
|
requirement("isort"),
|
|
],
|
|
)
|