• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright 2024 gRPC authors.
2#
3# Licensed under the Apache License, Version 2.0 (the "License");
4# you may not use this file except in compliance with the License.
5# You may obtain a copy of the License at
6#
7#     http://www.apache.org/licenses/LICENSE-2.0
8#
9# Unless required by applicable law or agreed to in writing, software
10# distributed under the License is distributed on an "AS IS" BASIS,
11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12# See the License for the specific language governing permissions and
13# limitations under the License.
14
15load(
16    "//bazel:grpc_build_system.bzl",
17    "grpc_cc_library",
18    "grpc_cc_proto_library",
19    "grpc_internal_proto_library",
20    "grpc_package",
21)
22
23grpc_package(name = "test/core/call/yodel")
24
25exports_files(
26    ["fuzzer_main.cc"],
27    visibility = ["//test:__subpackages__"],
28)
29
30grpc_cc_library(
31    name = "yodel_test",
32    testonly = 1,
33    srcs = ["yodel_test.cc"],
34    hdrs = ["yodel_test.h"],
35    external_deps = [
36        "absl/functional:any_invocable",
37        "absl/log",
38        "absl/random",
39        "absl/random:bit_gen_ref",
40        "absl/strings",
41        "gtest",
42    ],
43    visibility = ["//test:__subpackages__"],
44    deps = [
45        "//:config",
46        "//:debug_location",
47        "//:event_engine_base_hdrs",
48        "//:exec_ctx",
49        "//:iomgr_timer",
50        "//:promise",
51        "//src/core:call_arena_allocator",
52        "//src/core:call_spine",
53        "//src/core:cancel_callback",
54        "//src/core:metadata",
55        "//src/core:promise_factory",
56        "//src/core:resource_quota",
57        "//test/core/event_engine:event_engine_test_utils",
58        "//test/core/event_engine/fuzzing_event_engine",
59        "//test/core/test_util:grpc_test_util",
60    ],
61)
62
63grpc_cc_library(
64    name = "test_main",
65    testonly = 1,
66    srcs = ["test_main.cc"],
67    external_deps = ["absl/random"],
68    visibility = ["//test:__subpackages__"],
69    deps = [
70        "yodel_test",
71        "//:grpc_trace",
72        "//test/core/test_util:grpc_test_util",
73    ],
74)
75
76grpc_internal_proto_library(
77    name = "fuzzer_proto",
78    srcs = ["fuzzer.proto"],
79    deps = [
80        "//test/core/event_engine/fuzzing_event_engine:fuzzing_event_engine_proto",
81        "//test/core/test_util:fuzz_config_vars_proto",
82    ],
83)
84
85grpc_cc_proto_library(
86    name = "fuzzer_cc_proto",
87    visibility = ["//test:__subpackages__"],
88    deps = ["fuzzer_proto"],
89)
90