anki/pylib/BUILD.bazel
2020-11-02 15:21:12 +10:00

123 lines
2.2 KiB
Python

load("@rules_python//python:defs.bzl", "py_binary", "py_library", "py_test")
load("@py_deps//:requirements.bzl", "requirement")
py_binary(
name = "genbackend",
srcs = [
"tools/genbackend.py",
"//pylib/anki:backend_pb2",
],
imports = [
".",
],
visibility = [":__subpackages__"],
deps = [
requirement("black"),
requirement("stringcase"),
requirement("protobuf"),
],
)
py_library(
name = "hookslib",
srcs = ["tools/hookslib.py"],
imports = ["tools"],
visibility = ["//qt:__pkg__"],
)
py_binary(
name = "genhooks",
srcs = [
"tools/genhooks.py",
"tools/hookslib.py",
],
imports = ["."],
visibility = [":__subpackages__"],
deps = [
requirement("black"),
requirement("stringcase"),
],
)
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)",
],
data = ["mypy.ini"],
main = "tests/run_mypy.py",
deps = [
"//pylib/anki",
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",
srcs = glob([
"anki/**/*.py",
"tests/**/*.py",
"tools/*.py",
]),
args = [
"$(location .isort.cfg)",
],
data = [".isort.cfg"],
main = "tests/run_format.py",
deps = [
"//pylib/anki",
requirement("black"),
requirement("isort"),
],
)
py_binary(
name = "format_fix",
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"),
],
)