| load("@bazel_skylib//rules:copy_file.bzl", "copy_file") |
| load("@python//3.10:defs.bzl", py_binary_3_10 = "py_binary", py_test_3_10 = "py_test") |
| load("@python//3.11:defs.bzl", py_binary_3_11 = "py_binary", py_test_3_11 = "py_test") |
| load("@python//3.8:defs.bzl", py_binary_3_8 = "py_binary", py_test_3_8 = "py_test") |
| load("@python//3.9:defs.bzl", py_binary_3_9 = "py_binary", py_test_3_9 = "py_test") |
| load("@rules_python//python:defs.bzl", "py_binary", "py_test") |
| load("@rules_shell//shell:sh_test.bzl", "sh_test") |
| |
| copy_file( |
| name = "copy_version", |
| src = "version.py", |
| out = "version_default.py", |
| is_executable = True, |
| ) |
| |
| # NOTE: We are testing that the `main` is an optional param as per official |
| # docs https://bazel.build/reference/be/python#py_binary.main |
| py_binary( |
| name = "version_default", |
| srcs = ["version_default.py"], |
| ) |
| |
| py_binary_3_8( |
| name = "version_3_8", |
| srcs = ["version.py"], |
| main = "version.py", |
| ) |
| |
| py_binary_3_9( |
| name = "version_3_9", |
| srcs = ["version.py"], |
| main = "version.py", |
| ) |
| |
| py_binary_3_10( |
| name = "version_3_10", |
| srcs = ["version.py"], |
| main = "version.py", |
| ) |
| |
| py_binary_3_11( |
| name = "version_3_11", |
| srcs = ["version.py"], |
| main = "version.py", |
| ) |
| |
| py_test( |
| name = "my_lib_default_test", |
| srcs = ["my_lib_test.py"], |
| main = "my_lib_test.py", |
| deps = ["//libs/my_lib"], |
| ) |
| |
| py_test_3_8( |
| name = "my_lib_3_8_test", |
| srcs = ["my_lib_test.py"], |
| main = "my_lib_test.py", |
| deps = ["//libs/my_lib"], |
| ) |
| |
| py_test_3_9( |
| name = "my_lib_3_9_test", |
| srcs = ["my_lib_test.py"], |
| main = "my_lib_test.py", |
| deps = ["//libs/my_lib"], |
| ) |
| |
| py_test_3_10( |
| name = "my_lib_3_10_test", |
| srcs = ["my_lib_test.py"], |
| main = "my_lib_test.py", |
| deps = ["//libs/my_lib"], |
| ) |
| |
| py_test_3_11( |
| name = "my_lib_3_11_test", |
| srcs = ["my_lib_test.py"], |
| main = "my_lib_test.py", |
| deps = ["//libs/my_lib"], |
| ) |
| |
| copy_file( |
| name = "copy_version_test", |
| src = "version_test.py", |
| out = "version_default_test.py", |
| is_executable = True, |
| ) |
| |
| py_test( |
| name = "version_default_test", |
| srcs = ["version_default_test.py"], |
| env = {"VERSION_CHECK": "3.9"}, # The default defined in the WORKSPACE. |
| ) |
| |
| py_test_3_8( |
| name = "version_3_8_test", |
| srcs = ["version_test.py"], |
| env = {"VERSION_CHECK": "3.8"}, |
| main = "version_test.py", |
| ) |
| |
| py_test_3_9( |
| name = "version_3_9_test", |
| srcs = ["version_test.py"], |
| env = {"VERSION_CHECK": "3.9"}, |
| main = "version_test.py", |
| ) |
| |
| py_test_3_10( |
| name = "version_3_10_test", |
| srcs = ["version_test.py"], |
| env = {"VERSION_CHECK": "3.10"}, |
| main = "version_test.py", |
| ) |
| |
| py_test_3_11( |
| name = "version_3_11_test", |
| srcs = ["version_test.py"], |
| env = {"VERSION_CHECK": "3.11"}, |
| main = "version_test.py", |
| ) |
| |
| py_test( |
| name = "version_default_takes_3_10_subprocess_test", |
| srcs = ["cross_version_test.py"], |
| data = [":version_3_10"], |
| env = { |
| "SUBPROCESS_VERSION_CHECK": "3.10", |
| "SUBPROCESS_VERSION_PY_BINARY": "$(rootpath :version_3_10)", |
| "VERSION_CHECK": "3.9", |
| }, |
| main = "cross_version_test.py", |
| ) |
| |
| py_test_3_10( |
| name = "version_3_10_takes_3_9_subprocess_test", |
| srcs = ["cross_version_test.py"], |
| data = [":version_3_9"], |
| env = { |
| "SUBPROCESS_VERSION_CHECK": "3.9", |
| "SUBPROCESS_VERSION_PY_BINARY": "$(rootpath :version_3_9)", |
| "VERSION_CHECK": "3.10", |
| }, |
| main = "cross_version_test.py", |
| ) |
| |
| sh_test( |
| name = "version_test_binary_default", |
| srcs = ["version_test.sh"], |
| data = [":version_default"], |
| env = { |
| "VERSION_CHECK": "3.9", # The default defined in the WORKSPACE. |
| "VERSION_PY_BINARY": "$(rootpath :version_default)", |
| }, |
| ) |
| |
| sh_test( |
| name = "version_test_binary_3_8", |
| srcs = ["version_test.sh"], |
| data = [":version_3_8"], |
| env = { |
| "VERSION_CHECK": "3.8", |
| "VERSION_PY_BINARY": "$(rootpath :version_3_8)", |
| }, |
| ) |
| |
| sh_test( |
| name = "version_test_binary_3_9", |
| srcs = ["version_test.sh"], |
| data = [":version_3_9"], |
| env = { |
| "VERSION_CHECK": "3.9", |
| "VERSION_PY_BINARY": "$(rootpath :version_3_9)", |
| }, |
| ) |
| |
| sh_test( |
| name = "version_test_binary_3_10", |
| srcs = ["version_test.sh"], |
| data = [":version_3_10"], |
| env = { |
| "VERSION_CHECK": "3.10", |
| "VERSION_PY_BINARY": "$(rootpath :version_3_10)", |
| }, |
| ) |