aboutsummaryrefslogtreecommitdiff
path: root/python/pip_install/tools/lib/BUILD.bazel
diff options
context:
space:
mode:
Diffstat (limited to 'python/pip_install/tools/lib/BUILD.bazel')
-rw-r--r--python/pip_install/tools/lib/BUILD.bazel82
1 files changed, 82 insertions, 0 deletions
diff --git a/python/pip_install/tools/lib/BUILD.bazel b/python/pip_install/tools/lib/BUILD.bazel
new file mode 100644
index 0000000..37a8b09
--- /dev/null
+++ b/python/pip_install/tools/lib/BUILD.bazel
@@ -0,0 +1,82 @@
+load("//python:defs.bzl", "py_library", "py_test")
+load(":annotations_test_helpers.bzl", "package_annotation", "package_annotations_file")
+
+py_library(
+ name = "lib",
+ srcs = [
+ "annotation.py",
+ "arguments.py",
+ "bazel.py",
+ ],
+ visibility = ["//python/pip_install:__subpackages__"],
+)
+
+package_annotations_file(
+ name = "mock_annotations",
+ annotations = {
+ "pkg_a": package_annotation(),
+ "pkg_b": package_annotation(
+ data_exclude_glob = [
+ "*.foo",
+ "*.bar",
+ ],
+ ),
+ "pkg_c": package_annotation(
+ # The `join` and `strip` here accounts for potential differences
+ # in new lines between unix and windows hosts.
+ additive_build_content = "\n".join([line.strip() for line in """\
+cc_library(
+ name = "my_target",
+ hdrs = glob(["**/*.h"]),
+ srcs = glob(["**/*.cc"]),
+)
+""".splitlines()]),
+ data = [":my_target"],
+ ),
+ "pkg_d": package_annotation(
+ srcs_exclude_glob = ["pkg_d/tests/**"],
+ ),
+ },
+ tags = ["manual"],
+)
+
+py_test(
+ name = "annotations_test",
+ size = "small",
+ srcs = ["annotations_test.py"],
+ data = [":mock_annotations"],
+ env = {"MOCK_ANNOTATIONS": "$(rootpath :mock_annotations)"},
+ deps = [
+ ":lib",
+ "//python/runfiles",
+ ],
+)
+
+py_test(
+ name = "arguments_test",
+ size = "small",
+ srcs = [
+ "arguments_test.py",
+ ],
+ deps = [
+ ":lib",
+ ],
+)
+
+filegroup(
+ name = "distribution",
+ srcs = glob(
+ ["*"],
+ exclude = ["*_test.py"],
+ ),
+ visibility = ["//python/pip_install:__subpackages__"],
+)
+
+filegroup(
+ name = "py_srcs",
+ srcs = glob(
+ include = ["**/*.py"],
+ exclude = ["**/*_test.py"],
+ ),
+ visibility = ["//python/pip_install:__subpackages__"],
+)