Files
grpc/bazel/internal_python_rules.bzl
Keith Smiley b32559187c [bazel] Use python rules from rules_python (#40687)
This is required for the upcoming bazel 9.x release.

Closes #40687

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/40687 from keith:ks/bazel-use-python-rules-from-rules_python a4368f6e90edc883b639663e66d41074817f4013
PiperOrigin-RevId: 807360317
2025-09-15 13:31:10 -07:00

58 lines
1.9 KiB
Python

# Copyright 2021 The gRPC Authors
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
"""Python-related rules intended only for use internal to the repo."""
load("@rules_python//python:defs.bzl", "py_test")
load("//bazel:gevent_test.bzl", "py_grpc_gevent_test")
load("//bazel:logging_threshold_test.bzl", "py_grpc_logging_threshold_test")
load("//bazel:run_time_type_check_test.bzl", "py_grpc_run_time_type_check_test")
def internal_py_grpc_test(name, **kwargs):
"""Runs a test under all supported environments.
Args:
name: The name of the test.
**kwargs: Any additional arguments to add to the test.
"""
py_test(
name = name + ".native",
python_version = "PY3",
**kwargs
)
py_grpc_gevent_test(name, **kwargs)
py_grpc_logging_threshold_test(name, **kwargs)
suite_kwargs = {}
if "visibility" in kwargs:
suite_kwargs["visibility"] = kwargs["visibility"]
native.test_suite(
name = name,
tests = [
name + ".native",
name + ".gevent",
name + ".logging_threshold",
],
**suite_kwargs
)
def internal_py_grpc_test_with_runtime_type_check(name, **kwargs):
"""Runs a test with runtime type checking enabled.
Args:
name: The name of the test.
**kwargs: Any additional arguments to add to the test.
"""
py_grpc_run_time_type_check_test(name, **kwargs)