diff options
Diffstat (limited to 'tools/interface_generator/defs.bzl')
-rw-r--r-- | tools/interface_generator/defs.bzl | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/tools/interface_generator/defs.bzl b/tools/interface_generator/defs.bzl index d5c6f91..6f02b1f 100644 --- a/tools/interface_generator/defs.bzl +++ b/tools/interface_generator/defs.bzl @@ -1,3 +1,5 @@ +load("@pip//:requirements.bzl", "requirement") + def _generate_interface_impl(ctx): out_hdrs = [ ctx.actions.declare_file(ctx.attr.interface + ".h"), @@ -51,3 +53,23 @@ def generate_interface(name, interface, license, visibility = None): license = license, visibility = visibility, ) + +def py_pytest(name, srcs, deps = [], **kwargs): + native.py_test( + name = name, + srcs = ["//:pytest_wrapper.py"], + main = "//:pytest_wrapper.py", + data = srcs, + args = [ + "--black", + "--pylint", + #"--mypy", + ] + ["$(location :%s)" % x for x in srcs], + deps = [ + requirement("pytest"), + requirement("pytest-black"), + requirement("pytest-pylint"), + requirement("pytest-mypy"), + ] + deps, + **kwargs + ) |