The C based gRPC (C++, Python, Ruby, Objective-C, PHP, C#) https://grpc.io/
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

425 lines
8.8 KiB

# Copyright 2017 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.
load("//bazel:grpc_build_system.bzl", "grpc_cc_binary", "grpc_cc_library", "grpc_cc_test", "grpc_package")
licenses(["notice"])
grpc_package(
name = "test/cpp/util",
visibility = "public",
)
grpc_cc_library(
name = "test_config",
srcs = [
"test_config_cc.cc",
],
hdrs = [
"test_config.h",
],
external_deps = [
"absl/flags:parse",
],
deps = [
"//:gpr",
],
)
grpc_cc_library(
name = "grpc++_proto_reflection_desc_db",
srcs = [
"proto_reflection_descriptor_database.cc",
],
hdrs = [
"proto_reflection_descriptor_database.h",
],
deps = [
"//:grpc++",
"//:grpc++_config_proto",
"//src/proto/grpc/reflection/v1alpha:reflection_proto",
],
)
GRPCXX_TESTUTIL_SRCS = [
"byte_buffer_proto_helper.cc",
"string_ref_helper.cc",
"subprocess.cc",
]
GRPCXX_TESTUTIL_HDRS = [
"byte_buffer_proto_helper.h",
"string_ref_helper.h",
"subprocess.h",
]
grpc_cc_library(
name = "test_util",
srcs = GRPCXX_TESTUTIL_SRCS + [
"create_test_channel.cc",
"test_credentials_provider.cc",
],
hdrs = GRPCXX_TESTUTIL_HDRS + [
"create_test_channel.h",
"test_credentials_provider.h",
],
external_deps = [
"absl/flags:flag",
"protobuf",
],
deps = [
"//:grpc++",
"//test/core/end2end:ssl_test_data",
"//test/core/util:grpc_test_util",
"//test/core/util:grpc_test_util_base",
],
)
grpc_cc_library(
name = "channel_trace_proto_helper",
testonly = 1,
srcs = [
"channel_trace_proto_helper.cc",
],
hdrs = [
"channel_trace_proto_helper.h",
],
external_deps = [
"gtest",
"protobuf",
],
deps = [
"//:grpc++",
"//src/proto/grpc/channelz:channelz_proto",
],
)
grpc_cc_library(
name = "test_util_unsecure",
srcs = GRPCXX_TESTUTIL_SRCS,
hdrs = GRPCXX_TESTUTIL_HDRS,
external_deps = [
"protobuf",
],
deps = [
"//:grpc++_unsecure",
"//test/core/util:grpc_test_util_base",
"//test/core/util:grpc_test_util_unsecure",
],
)
grpc_cc_library(
name = "grpc_cli_utils",
srcs = [
"cli_call.cc",
"cli_credentials.cc",
"proto_file_parser.cc",
"service_describer.cc",
],
hdrs = [
"cli_call.h",
"cli_credentials.h",
"config_grpc_cli.h",
"proto_file_parser.h",
"service_describer.h",
],
external_deps = [
"absl/flags:flag",
"protobuf",
"protobuf_clib",
],
deps = [
":grpc++_proto_reflection_desc_db",
"//:grpc++",
"//src/proto/grpc/reflection/v1alpha:reflection_proto",
],
)
grpc_cc_library(
name = "grpc_cli_libs",
srcs = [
"grpc_tool.cc",
],
hdrs = [
"grpc_tool.h",
],
external_deps = [
"absl/flags:flag",
],
deps = [
":grpc_cli_utils",
],
)
grpc_cc_library(
name = "metrics_server_lib",
srcs = [
"metrics_server.cc",
],
hdrs = [
"metrics_server.h",
],
deps = [
"//:grpc++",
"//src/proto/grpc/testing:metrics_proto",
],
)
grpc_cc_test(
name = "grpc_tool_test",
srcs = [
"grpc_tool_test.cc",
],
data = [
"//src/core/tsi/test_creds:ca.pem",
"//src/core/tsi/test_creds:server1.key",
"//src/core/tsi/test_creds:server1.pem",
"//src/proto/grpc/testing:echo.proto",
"//src/proto/grpc/testing:echo_messages.proto",
"//src/proto/grpc/testing:simple_messages.proto",
"//src/proto/grpc/testing/xds/v3:orca_load_report.proto",
],
external_deps = [
"absl/flags:flag",
"gtest",
],
tags = [
"no_mac",
"no_test_ios",
"no_windows",
"nomsan", # death tests seem to be incompatible with msan
],
deps = [
":grpc_cli_libs",
":test_util",
"//:grpc++_reflection",
"//src/proto/grpc/testing:echo_messages_proto",
"//src/proto/grpc/testing:echo_proto",
"//src/proto/grpc/testing:simple_messages_proto",
"//src/proto/grpc/testing/xds/v3:orca_load_report_proto",
"//test/core/util:grpc_test_util",
"//test/cpp/util:test_config",
],
)
grpc_cc_test(
name = "byte_buffer_test",
srcs = [
"byte_buffer_test.cc",
],
external_deps = [
"gtest",
],
uses_event_engine = False,
uses_polling = False,
deps = [
":test_util",
],
)
grpc_cc_test(
name = "slice_test",
srcs = [
"slice_test.cc",
],
external_deps = [
"gtest",
],
uses_event_engine = False,
uses_polling = False,
deps = [
":test_util",
],
)
grpc_cc_test(
name = "string_ref_test",
srcs = [
"string_ref_test.cc",
],
external_deps = [
"gtest",
],
uses_event_engine = False,
uses_polling = False,
deps = [
"//:grpc++",
"//test/core/util:grpc_test_util",
],
)
grpc_cc_test(
name = "time_test",
srcs = [
"time_test.cc",
],
external_deps = [
"gtest",
],
uses_event_engine = False,
uses_polling = False,
deps = [
":test_util",
],
)
grpc_cc_test(
name = "cli_call_test",
srcs = [
"cli_call_test.cc",
],
external_deps = [
"gtest",
],
deps = [
":grpc_cli_libs",
":test_util",
"//src/proto/grpc/testing:echo_proto",
"//test/core/util:grpc_test_util",
],
)
grpc_cc_test(
name = "error_details_test",
srcs = [
"error_details_test.cc",
],
external_deps = [
"gtest",
],
tags = ["no_test_ios"],
deps = [
"//:grpc++_error_details",
"//src/proto/grpc/status:status_proto",
"//src/proto/grpc/testing:echo_messages_proto",
"//test/core/util:grpc_test_util",
],
)
grpc_cc_binary(
name = "grpc_cli",
srcs = [
"grpc_cli.cc",
],
external_deps = [
"absl/flags:flag",
],
visibility = [
"@grpc:cli",
],
deps = [
":grpc++_proto_reflection_desc_db",
":grpc_cli_libs",
":test_config",
"//:grpc++",
"//src/proto/grpc/reflection/v1alpha:reflection_proto",
],
)
grpc_cc_binary(
name = "channelz_sampler",
srcs = ["channelz_sampler.cc"],
external_deps = [
"absl/flags:flag",
"absl/strings",
],
language = "c++",
tags = [
"no_windows", # unistd.h
],
deps = [
"//:gpr",
"//:grpc++",
"//:grpcpp_channelz",
"//src/proto/grpc/channelz:channelz_proto",
"//test/cpp/util:test_config",
"//test/cpp/util:test_util",
],
)
grpc_cc_test(
name = "channelz_sampler_test",
srcs = [
"channelz_sampler_test.cc",
],
data = [
":channelz_sampler",
],
external_deps = [
"gtest",
],
flaky = True,
tags = [
"no_mac", # cmake does not build channelz_sampler in Basic Tests C/C++ MacOS test
"no_test_android", # android_cc_test doesn't work with data dependency.
"no_test_ios",
"no_windows", # unistd.h
],
deps = [
"//:gpr",
"//:grpc",
"//:grpc++",
"//:grpcpp_channelz",
"//src/proto/grpc/channelz:channelz_proto",
"//src/proto/grpc/testing:test_proto",
"//test/core/util:grpc_test_util",
"//test/cpp/util:test_util",
],
)
grpc_cc_library(
name = "tls_test_utils",
srcs = [
"tls_test_utils.cc",
],
hdrs = [
"tls_test_utils.h",
],
deps = [
"//:gpr",
"//:grpc",
"//:grpc++",
"//test/core/util:grpc_test_util",
],
)
grpc_cc_test(
name = "proto_buffer_reader_test",
srcs = [
"proto_buffer_reader_test.cc",
],
external_deps = [
"gtest",
],
uses_event_engine = False,
uses_polling = False,
deps = [
":test_util",
],
)
grpc_cc_test(
name = "proto_buffer_writer_test",
srcs = [
"proto_buffer_writer_test.cc",
],
external_deps = [
"gtest",
],
uses_event_engine = False,
uses_polling = False,
deps = [
":test_util",
],
)