BUILD 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229
  1. # Copyright 2017 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. load("//bazel:grpc_build_system.bzl", "grpc_cc_library", "grpc_cc_test", "grpc_package")
  15. licenses(["notice"])
  16. grpc_package(
  17. name = "test/core/util",
  18. visibility = "public",
  19. )
  20. grpc_cc_library(
  21. name = "grpc_suppressions",
  22. data = [
  23. "lsan_suppressions.txt",
  24. "tsan_suppressions.txt",
  25. "ubsan_suppressions.txt",
  26. ],
  27. )
  28. grpc_cc_library(
  29. name = "grpc_test_util_base",
  30. srcs = [
  31. "cmdline.cc",
  32. "fuzzer_util.cc",
  33. "grpc_profiler.cc",
  34. "histogram.cc",
  35. "mock_endpoint.cc",
  36. "parse_hexstring.cc",
  37. "passthru_endpoint.cc",
  38. "port.cc",
  39. "port_isolated_runtime_environment.cc",
  40. "port_server_client.cc",
  41. "reconnect_server.cc",
  42. "resolve_localhost_ip46.cc",
  43. "slice_splitter.cc",
  44. "subprocess_posix.cc",
  45. "subprocess_windows.cc",
  46. "test_config.cc",
  47. "test_tcp_server.cc",
  48. "tracer_util.cc",
  49. ],
  50. hdrs = [
  51. "cmdline.h",
  52. "evaluate_args_test_util.h",
  53. "fuzzer_util.h",
  54. "grpc_profiler.h",
  55. "histogram.h",
  56. "mock_authorization_endpoint.h",
  57. "mock_endpoint.h",
  58. "parse_hexstring.h",
  59. "passthru_endpoint.h",
  60. "port.h",
  61. "port_server_client.h",
  62. "reconnect_server.h",
  63. "resolve_localhost_ip46.h",
  64. "slice_splitter.h",
  65. "subprocess.h",
  66. "test_config.h",
  67. "test_tcp_server.h",
  68. "tracer_util.h",
  69. ],
  70. external_deps = [
  71. "absl/debugging:failure_signal_handler",
  72. "absl/debugging:symbolize",
  73. "absl/strings:str_format",
  74. ],
  75. language = "C++",
  76. deps = [
  77. ":build",
  78. ":grpc_suppressions",
  79. ":stack_tracer",
  80. "//:gpr",
  81. "//:grpc_base",
  82. "//:grpc_common",
  83. ],
  84. )
  85. grpc_cc_library(
  86. name = "grpc_test_util",
  87. srcs = ["tls_utils.cc"],
  88. hdrs = ["tls_utils.h"],
  89. language = "C++",
  90. deps = [
  91. ":grpc_test_util_base",
  92. "//:grpc",
  93. ],
  94. )
  95. grpc_cc_library(
  96. name = "grpc_test_util_unsecure",
  97. srcs = [],
  98. hdrs = [],
  99. language = "C++",
  100. deps = [
  101. ":grpc_test_util_base",
  102. "//:grpc_unsecure",
  103. ],
  104. )
  105. grpc_cc_test(
  106. name = "cmdline_test",
  107. srcs = ["cmdline_test.cc"],
  108. language = "C++",
  109. uses_polling = False,
  110. deps = [
  111. ":grpc_test_util",
  112. "//:gpr",
  113. ],
  114. )
  115. grpc_cc_library(
  116. name = "fuzzer_corpus_test",
  117. testonly = 1,
  118. srcs = ["fuzzer_corpus_test.cc"],
  119. external_deps = [
  120. "absl/flags:flag",
  121. "gtest",
  122. ],
  123. linkstatic = True,
  124. tags = ["no_windows"],
  125. deps = [
  126. ":grpc_test_util",
  127. "//:grpc",
  128. "//test/cpp/util:test_config",
  129. ],
  130. )
  131. grpc_cc_test(
  132. name = "histogram_test",
  133. srcs = ["histogram_test.cc"],
  134. language = "C++",
  135. uses_polling = False,
  136. deps = [
  137. ":grpc_test_util",
  138. "//:gpr",
  139. ],
  140. )
  141. sh_library(
  142. name = "fuzzer_one_entry_runner",
  143. srcs = ["fuzzer_one_entry_runner.sh"],
  144. )
  145. sh_library(
  146. name = "run_with_poller_sh",
  147. srcs = ["run_with_poller.sh"],
  148. )
  149. grpc_cc_library(
  150. name = "stack_tracer",
  151. srcs = [
  152. "stack_tracer.cc",
  153. ],
  154. hdrs = [
  155. "stack_tracer.h",
  156. ],
  157. external_deps = [
  158. "absl/debugging:stacktrace",
  159. "absl/debugging:symbolize",
  160. ],
  161. language = "C++",
  162. deps = [
  163. "//:grpc_common",
  164. ],
  165. )
  166. grpc_cc_test(
  167. name = "stack_tracer_test",
  168. srcs = [
  169. "stack_tracer_test.cc",
  170. ],
  171. external_deps = [
  172. "absl/debugging:symbolize",
  173. "gtest",
  174. ],
  175. language = "C++",
  176. # TODO(https://github.com/grpc/grpc/issues/24627): Disable this on Windows
  177. tags = ["no_windows"],
  178. uses_polling = False,
  179. deps = [
  180. ":grpc_test_util",
  181. ":stack_tracer",
  182. ],
  183. )
  184. grpc_cc_library(
  185. name = "test_lb_policies",
  186. testonly = 1,
  187. srcs = ["test_lb_policies.cc"],
  188. hdrs = ["test_lb_policies.h"],
  189. deps = [
  190. "//:grpc",
  191. ],
  192. )
  193. grpc_cc_library(
  194. name = "fake_udp_and_tcp_server",
  195. srcs = ["fake_udp_and_tcp_server.cc"],
  196. hdrs = ["fake_udp_and_tcp_server.h"],
  197. external_deps = [
  198. "absl/strings",
  199. "absl/strings:str_format",
  200. ],
  201. language = "C++",
  202. deps = [
  203. ":grpc_test_util",
  204. "//:gpr",
  205. "//:grpc",
  206. ],
  207. )
  208. grpc_cc_library(
  209. name = "build",
  210. srcs = ["build.cc"],
  211. hdrs = ["build.h"],
  212. )