aboutsummaryrefslogtreecommitdiff
path: root/tools/interface_generator/private
diff options
context:
space:
mode:
Diffstat (limited to 'tools/interface_generator/private')
-rw-r--r--tools/interface_generator/private/BUILD.bazel9
-rw-r--r--tools/interface_generator/private/defs.bzl29
-rw-r--r--tools/interface_generator/private/mypyrc2
-rw-r--r--tools/interface_generator/private/pylintrc0
-rwxr-xr-xtools/interface_generator/private/pytest_wrapper.py7
5 files changed, 47 insertions, 0 deletions
diff --git a/tools/interface_generator/private/BUILD.bazel b/tools/interface_generator/private/BUILD.bazel
new file mode 100644
index 0000000..3012bcb
--- /dev/null
+++ b/tools/interface_generator/private/BUILD.bazel
@@ -0,0 +1,9 @@
+""" targets internal to the tool and rule """
+
+package(default_visibility = ["//:__pkg__"])
+
+exports_files([
+ "mypyrc",
+ "pylintrc",
+ "pytest_wrapper.py",
+])
diff --git a/tools/interface_generator/private/defs.bzl b/tools/interface_generator/private/defs.bzl
new file mode 100644
index 0000000..8e2ae8d
--- /dev/null
+++ b/tools/interface_generator/private/defs.bzl
@@ -0,0 +1,29 @@
+load("@pip//:requirements.bzl", "requirement")
+
+def py_pytest(name, srcs, deps = [], data = [], **kwargs):
+ native.py_test(
+ name = name,
+ srcs = ["//private:pytest_wrapper.py"],
+ main = "//private:pytest_wrapper.py",
+ legacy_create_init = False,
+ imports = ["."],
+ args = [
+ "--capture=no",
+ "--black",
+ "--pylint",
+ "--pylint-rcfile=$(location //private:pylintrc)",
+ "--mypy",
+ "--mypy-config-file=$(location //private:mypyrc)",
+ ] + ["$(location :%s)" % x for x in srcs],
+ deps = [
+ requirement("pytest"),
+ requirement("pytest-black"),
+ requirement("pytest-pylint"),
+ requirement("pytest-mypy"),
+ ] + deps,
+ data = [
+ "//private:mypyrc",
+ "//private:pylintrc",
+ ] + srcs + data,
+ **kwargs
+ )
diff --git a/tools/interface_generator/private/mypyrc b/tools/interface_generator/private/mypyrc
new file mode 100644
index 0000000..d787271
--- /dev/null
+++ b/tools/interface_generator/private/mypyrc
@@ -0,0 +1,2 @@
+[mypy]
+disable_error_code = import-untyped
diff --git a/tools/interface_generator/private/pylintrc b/tools/interface_generator/private/pylintrc
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/tools/interface_generator/private/pylintrc
diff --git a/tools/interface_generator/private/pytest_wrapper.py b/tools/interface_generator/private/pytest_wrapper.py
new file mode 100755
index 0000000..b4def3b
--- /dev/null
+++ b/tools/interface_generator/private/pytest_wrapper.py
@@ -0,0 +1,7 @@
+#!/usr/bin/env python3
+
+import sys
+import pytest
+
+if __name__ == "__main__":
+ sys.exit(pytest.main(sys.argv[1:]))