• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright 2016 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("//bazel:custom_exec_properties.bzl", "LARGE_MACHINE")
16load("//bazel:grpc_build_system.bzl", "grpc_cc_test", "grpc_package")
17load(
18    "//test/core/test_util:grpc_fuzzer.bzl",
19    "grpc_fuzz_test",
20    "grpc_fuzzer",
21    "grpc_proto_fuzzer",
22)
23load("//test/cpp/microbenchmarks:grpc_benchmark_config.bzl", "HISTORY", "grpc_cc_benchmark")
24
25licenses(["notice"])
26
27grpc_package(name = "test/core/util")
28
29grpc_cc_test(
30    name = "directory_reader_test",
31    srcs = ["directory_reader_test.cc"],
32    data = [
33        "//test/core/tsi/test_creds/crl_data/crls:ab06acdd.r0",
34        "//test/core/tsi/test_creds/crl_data/crls:b9322cac.r0",
35        "//test/core/tsi/test_creds/crl_data/crls:current.crl",
36        "//test/core/tsi/test_creds/crl_data/crls:intermediate.crl",
37    ],
38    external_deps = [
39        "gtest",
40    ],
41    language = "C++",
42    uses_event_engine = False,
43    uses_polling = False,
44    deps = [
45        "//src/core:directory_reader",
46        "//test/core/test_util:grpc_test_util",
47    ],
48)
49
50grpc_cc_test(
51    name = "tdigest_test",
52    srcs = ["tdigest_test.cc"],
53    external_deps = [
54        "gtest",
55        "absl/random",
56        "absl/container:flat_hash_map",
57        "benchmark",
58    ],
59    language = "C++",
60    uses_event_engine = False,
61    uses_polling = False,
62    deps = [
63        "//src/core:tdigest",
64    ],
65)
66
67grpc_cc_benchmark(
68    name = "bm_tdigest",
69    srcs = ["bm_tdigest.cc"],
70    external_deps = [
71    ],
72    monitoring = HISTORY,
73    deps = [
74        "//src/core:tdigest",
75    ],
76)
77
78grpc_cc_test(
79    name = "examine_stack_test",
80    srcs = ["examine_stack_test.cc"],
81    external_deps = [
82        "absl/debugging:stacktrace",
83        "absl/debugging:symbolize",
84        "absl/log:log",
85        "gtest",
86    ],
87    language = "C++",
88    # TODO(https://github.com/grpc/grpc/issues/24627): Disable this on Windows
89    tags = ["no_windows"],
90    uses_event_engine = False,
91    uses_polling = False,
92    deps = [
93        "//:gpr",
94        "//test/core/test_util:grpc_test_util",
95    ],
96)
97
98grpc_cc_test(
99    name = "dump_args_test",
100    srcs = ["dump_args_test.cc"],
101    external_deps = [
102        "gtest",
103    ],
104    language = "C++",
105    uses_event_engine = False,
106    uses_polling = False,
107    deps = [
108        "//src/core:dump_args",
109    ],
110)
111
112# TODO(hork): solidify fork support requirements for EventEngines
113grpc_cc_test(
114    name = "fork_test",
115    srcs = ["fork_test.cc"],
116    external_deps = ["gtest"],
117    language = "C++",
118    tags = ["no_windows"],
119    uses_event_engine = True,  # engines should behave appropriately on Fork
120    uses_polling = False,
121    deps = [
122        "//:gpr",
123        "//test/core/test_util:grpc_test_util",
124    ],
125)
126
127grpc_cc_test(
128    name = "bitset_test",
129    srcs = ["bitset_test.cc"],
130    external_deps = ["gtest"],
131    language = "C++",
132    uses_event_engine = False,
133    uses_polling = False,
134    deps = [
135        "//src/core:bitset",
136    ],
137)
138
139grpc_cc_test(
140    name = "if_list_test",
141    srcs = ["if_list_test.cc"],
142    external_deps = ["gtest"],
143    language = "C++",
144    uses_event_engine = False,
145    uses_polling = False,
146    deps = [
147        "//src/core:if_list",
148    ],
149)
150
151grpc_cc_test(
152    name = "no_destruct_test",
153    srcs = ["no_destruct_test.cc"],
154    external_deps = ["gtest"],
155    language = "C++",
156    uses_event_engine = False,
157    uses_polling = False,
158    deps = [
159        "//src/core:no_destruct",
160    ],
161)
162
163grpc_cc_test(
164    name = "match_test",
165    srcs = ["match_test.cc"],
166    external_deps = ["gtest"],
167    language = "C++",
168    uses_event_engine = False,
169    uses_polling = False,
170    deps = [
171        "//src/core:match",
172    ],
173)
174
175grpc_cc_test(
176    name = "overload_test",
177    srcs = ["overload_test.cc"],
178    external_deps = ["gtest"],
179    language = "C++",
180    uses_event_engine = False,
181    uses_polling = False,
182    deps = [
183        "//src/core:overload",
184    ],
185)
186
187grpc_cc_test(
188    name = "down_cast_test",
189    srcs = ["down_cast_test.cc"],
190    external_deps = ["gtest"],
191    language = "C++",
192    uses_event_engine = False,
193    uses_polling = False,
194    deps = [
195        "//src/core:down_cast",
196    ],
197)
198
199grpc_cc_test(
200    name = "table_test",
201    srcs = ["table_test.cc"],
202    external_deps = [
203        "gtest",
204        "absl/types:optional",
205    ],
206    language = "C++",
207    uses_event_engine = False,
208    uses_polling = False,
209    deps = [
210        "//src/core:table",
211    ],
212)
213
214grpc_cc_test(
215    name = "host_port_test",
216    srcs = ["host_port_test.cc"],
217    external_deps = ["gtest"],
218    language = "C++",
219    uses_event_engine = False,
220    uses_polling = False,
221    deps = [
222        "//:gpr",
223        "//test/core/test_util:grpc_test_util",
224    ],
225)
226
227grpc_cc_test(
228    name = "mpscq_test",
229    srcs = ["mpscq_test.cc"],
230    exec_properties = LARGE_MACHINE,
231    external_deps = [
232        "absl/log:log",
233        "gtest",
234    ],
235    language = "C++",
236    tags = ["no_windows"],  # LARGE_MACHINE is not configured for windows RBE
237    uses_event_engine = False,
238    uses_polling = False,
239    deps = [
240        "//:gpr",
241        "//test/core/test_util:grpc_test_util",
242    ],
243)
244
245grpc_cc_test(
246    name = "orphanable_test",
247    srcs = ["orphanable_test.cc"],
248    external_deps = [
249        "gtest",
250    ],
251    language = "C++",
252    deps = [
253        "//:orphanable",
254        "//test/core/test_util:grpc_test_util",
255    ],
256)
257
258grpc_cc_test(
259    name = "ref_counted_test",
260    srcs = ["ref_counted_test.cc"],
261    external_deps = [
262        "gtest",
263    ],
264    language = "C++",
265    deps = [
266        "//src/core:ref_counted",
267        "//test/core/test_util:grpc_test_util",
268    ],
269)
270
271grpc_cc_test(
272    name = "dual_ref_counted_test",
273    srcs = ["dual_ref_counted_test.cc"],
274    external_deps = [
275        "absl/log:check",
276        "gtest",
277    ],
278    language = "C++",
279    deps = [
280        "//src/core:dual_ref_counted",
281        "//test/core/test_util:grpc_test_util",
282    ],
283)
284
285grpc_cc_test(
286    name = "ref_counted_ptr_test",
287    srcs = ["ref_counted_ptr_test.cc"],
288    external_deps = [
289        "absl/container:flat_hash_set",
290        "absl/log:check",
291        "gtest",
292    ],
293    language = "C++",
294    deps = [
295        "//:ref_counted_ptr",
296        "//src/core:dual_ref_counted",
297        "//src/core:ref_counted",
298        "//test/core/test_util:grpc_test_util",
299    ],
300)
301
302grpc_cc_test(
303    name = "thd_test",
304    srcs = ["thd_test.cc"],
305    external_deps = ["gtest"],
306    language = "C++",
307    uses_event_engine = False,
308    uses_polling = False,
309    deps = [
310        "//:gpr",
311        "//test/core/test_util:grpc_test_util",
312    ],
313)
314
315grpc_cc_test(
316    name = "stat_test",
317    srcs = ["stat_test.cc"],
318    external_deps = [
319        "gtest",
320    ],
321    language = "C++",
322    uses_event_engine = False,
323    uses_polling = False,
324    deps = [
325        "//:gpr",
326        "//:grpc",
327        "//test/core/test_util:grpc_test_util",
328    ],
329)
330
331grpc_cc_test(
332    name = "status_helper_test",
333    srcs = ["status_helper_test.cc"],
334    external_deps = [
335        "gtest",
336    ],
337    language = "C++",
338    uses_event_engine = False,
339    uses_polling = False,
340    deps = [
341        "//:gpr",
342        "//test/core/test_util:grpc_test_util",
343    ],
344)
345
346grpc_cc_test(
347    name = "time_util_test",
348    srcs = ["time_util_test.cc"],
349    external_deps = [
350        "gtest",
351    ],
352    language = "C++",
353    uses_event_engine = False,
354    uses_polling = False,
355    deps = [
356        "//:gpr",
357        "//test/core/test_util:grpc_test_util",
358    ],
359)
360
361grpc_cc_test(
362    name = "cpp_impl_of_test",
363    srcs = ["cpp_impl_of_test.cc"],
364    external_deps = ["gtest"],
365    language = "c++",
366    uses_event_engine = False,
367    uses_polling = False,
368    deps = [
369        "//:cpp_impl_of",
370    ],
371)
372
373grpc_cc_test(
374    name = "chunked_vector_test",
375    srcs = ["chunked_vector_test.cc"],
376    external_deps = ["gtest"],
377    language = "c++",
378    tags = [
379        "resource_quota_test",
380    ],
381    uses_event_engine = False,
382    uses_polling = False,
383    deps = [
384        "//:gpr",
385        "//src/core:chunked_vector",
386        "//src/core:resource_quota",
387    ],
388)
389
390grpc_proto_fuzzer(
391    name = "chunked_vector_fuzzer",
392    srcs = ["chunked_vector_fuzzer.cc"],
393    corpus = "chunked_vector_corpora",
394    external_deps = ["absl/log:check"],
395    language = "C++",
396    proto = "chunked_vector_fuzzer.proto",
397    tags = ["no_windows"],
398    uses_event_engine = False,
399    uses_polling = False,
400    deps = [
401        "//src/core:chunked_vector",
402        "//src/core:resource_quota",
403        "//test/core/test_util:grpc_test_util",
404    ],
405)
406
407grpc_cc_test(
408    name = "time_test",
409    srcs = ["time_test.cc"],
410    external_deps = ["gtest"],
411    language = "c++",
412    uses_event_engine = False,
413    uses_polling = False,
414    deps = [
415        "//src/core:time",
416    ],
417)
418
419grpc_cc_test(
420    name = "single_set_ptr_test",
421    srcs = ["single_set_ptr_test.cc"],
422    external_deps = [
423        "absl/log:log",
424        "gtest",
425    ],
426    language = "c++",
427    uses_event_engine = False,
428    uses_polling = False,
429    deps = [
430        "//src/core:single_set_ptr",
431    ],
432)
433
434grpc_cc_test(
435    name = "sorted_pack_test",
436    srcs = ["sorted_pack_test.cc"],
437    external_deps = ["gtest"],
438    language = "c++",
439    uses_event_engine = False,
440    uses_polling = False,
441    deps = [
442        "//src/core:sorted_pack",
443    ],
444)
445
446grpc_cc_test(
447    name = "unique_type_name_test",
448    srcs = ["unique_type_name_test.cc"],
449    external_deps = [
450        "gtest",
451        "absl/container:flat_hash_map",
452        "absl/strings:str_format",
453    ],
454    language = "c++",
455    uses_event_engine = False,
456    uses_polling = False,
457    deps = [
458        "//src/core:unique_type_name",
459    ],
460)
461
462grpc_cc_test(
463    name = "work_serializer_test",
464    srcs = ["work_serializer_test.cc"],
465    exec_properties = LARGE_MACHINE,
466    external_deps = [
467        "gtest",
468    ],
469    flaky = True,
470    language = "C++",
471    shard_count = 5,
472    tags = [
473        "no_windows",  # LARGE_MACHINE is not configured for windows RBE
474    ],
475    deps = [
476        "//:gpr",
477        "//:grpc",
478        "//test/core/event_engine:event_engine_test_utils",
479        "//test/core/test_util:grpc_test_util",
480    ],
481)
482
483grpc_cc_test(
484    name = "validation_errors_test",
485    srcs = ["validation_errors_test.cc"],
486    external_deps = [
487        "gtest",
488    ],
489    language = "C++",
490    deps = [
491        "//src/core:validation_errors",
492        "//test/core/test_util:grpc_test_util",
493    ],
494)
495
496grpc_cc_test(
497    name = "notification_test",
498    srcs = ["notification_test.cc"],
499    external_deps = [
500        "gtest",
501    ],
502    language = "C++",
503    uses_event_engine = False,
504    uses_polling = False,
505    deps = ["//src/core:notification"],
506)
507
508grpc_cc_test(
509    name = "load_file_test",
510    srcs = ["load_file_test.cc"],
511    external_deps = [
512        "gtest",
513    ],
514    language = "C++",
515    uses_event_engine = False,
516    uses_polling = False,
517    deps = [
518        "//src/core:load_file",
519        "//test/core/test_util:grpc_test_util",
520    ],
521)
522
523grpc_cc_test(
524    name = "uuid_v4_test",
525    srcs = ["uuid_v4_test.cc"],
526    external_deps = [
527        "gtest",
528    ],
529    language = "C++",
530    uses_event_engine = False,
531    uses_polling = False,
532    deps = [
533        "//src/core:uuid_v4",
534        "//test/core/test_util:grpc_test_util",
535    ],
536)
537
538grpc_cc_test(
539    name = "glob_test",
540    srcs = ["glob_test.cc"],
541    external_deps = ["gtest"],
542    language = "C++",
543    uses_event_engine = False,
544    uses_polling = False,
545    deps = [
546        "//:gpr",
547        "//src/core:useful",
548        "//test/core/test_util:grpc_test_util",
549    ],
550)
551
552grpc_fuzzer(
553    name = "uri_fuzzer_test",
554    srcs = ["uri_fuzzer_test.cc"],
555    corpus = "uri_corpus",
556    language = "C++",
557    tags = [
558        "no_windows",
559        # Without "nofixdeps", "//:grpc" gets substituted with "//:event_engine_base_hdrs"
560        "nofixdeps",
561    ],
562    deps = [
563        "//:exec_ctx",
564        "//:gpr",
565        "//:grpc",
566        "//:uri",
567    ],
568)
569
570grpc_cc_test(
571    name = "uri_test",
572    srcs = ["uri_test.cc"],
573    external_deps = [
574        "absl/status",
575        "gtest",
576    ],
577    language = "C++",
578    deps = [
579        "//:event_engine_base_hdrs",
580        "//:uri",
581        "//test/core/test_util:grpc_test_util_unsecure",
582    ],
583)
584
585grpc_cc_test(
586    name = "matchers_test",
587    srcs = ["matchers_test.cc"],
588    external_deps = ["gtest"],
589    language = "C++",
590    deps = [
591        "//:gpr",
592        "//:grpc",
593        "//test/core/test_util:grpc_test_util",
594        "//test/core/test_util:grpc_test_util_base",
595    ],
596)
597
598grpc_cc_test(
599    name = "backoff_test",
600    srcs = ["backoff_test.cc"],
601    external_deps = ["gtest"],
602    language = "C++",
603    uses_event_engine = False,
604    uses_polling = False,
605    deps = [
606        "//:backoff",
607        "//:exec_ctx",
608        "//:grpc",
609        "//src/core:time",
610        "//test/core/test_util:grpc_test_util",
611    ],
612)
613
614grpc_cc_test(
615    name = "random_early_detection_test",
616    srcs = ["random_early_detection_test.cc"],
617    external_deps = [
618        "absl/random",
619        "gtest",
620    ],
621    language = "C++",
622    uses_event_engine = False,
623    uses_polling = False,
624    deps = ["//src/core:random_early_detection"],
625)
626
627grpc_cc_test(
628    name = "alloc_test",
629    srcs = ["alloc_test.cc"],
630    external_deps = ["gtest"],
631    language = "C++",
632    uses_event_engine = False,
633    uses_polling = False,
634    deps = [
635        "//:gpr",
636        "//test/core/test_util:grpc_test_util",
637    ],
638)
639
640grpc_cc_test(
641    name = "cpu_test",
642    srcs = ["cpu_test.cc"],
643    external_deps = ["gtest"],
644    language = "C++",
645    uses_event_engine = False,
646    uses_polling = False,
647    deps = [
648        "//:gpr",
649        "//test/core/test_util:grpc_test_util",
650    ],
651)
652
653grpc_cc_test(
654    name = "env_test",
655    srcs = ["env_test.cc"],
656    external_deps = [
657        "absl/log:log",
658        "gtest",
659    ],
660    language = "C++",
661    uses_event_engine = False,
662    uses_polling = False,
663    deps = [
664        "//:gpr",
665        "//test/core/test_util:grpc_test_util",
666    ],
667)
668
669grpc_cc_test(
670    name = "spinlock_test",
671    srcs = ["spinlock_test.cc"],
672    external_deps = ["gtest"],
673    language = "C++",
674    uses_event_engine = False,
675    uses_polling = False,
676    deps = [
677        "//:gpr",
678        "//test/core/test_util:grpc_test_util",
679    ],
680)
681
682grpc_cc_test(
683    name = "string_test",
684    srcs = ["string_test.cc"],
685    external_deps = ["gtest"],
686    language = "C++",
687    uses_event_engine = False,
688    uses_polling = False,
689    deps = [
690        "//:gpr",
691        "//test/core/test_util:grpc_test_util",
692    ],
693)
694
695grpc_cc_test(
696    name = "sync_test",
697    srcs = ["sync_test.cc"],
698    external_deps = ["gtest"],
699    language = "C++",
700    uses_event_engine = False,
701    uses_polling = False,
702    deps = [
703        "//:gpr",
704        "//test/core/test_util:grpc_test_util",
705    ],
706)
707
708grpc_cc_test(
709    name = "gpr_time_test",
710    srcs = ["gpr_time_test.cc"],
711    external_deps = ["gtest"],
712    language = "C++",
713    uses_event_engine = False,
714    uses_polling = False,
715    deps = [
716        "//:gpr",
717        "//test/core/test_util:grpc_test_util",
718    ],
719)
720
721grpc_cc_test(
722    name = "unique_ptr_with_bitset_test",
723    srcs = ["unique_ptr_with_bitset_test.cc"],
724    external_deps = ["gtest"],
725    language = "C++",
726    uses_event_engine = False,
727    uses_polling = False,
728    deps = [
729        "//:gpr_platform",
730        "//src/core:unique_ptr_with_bitset",
731    ],
732)
733
734grpc_cc_test(
735    name = "useful_test",
736    srcs = ["useful_test.cc"],
737    external_deps = ["gtest"],
738    language = "C++",
739    uses_event_engine = False,
740    uses_polling = False,
741    deps = [
742        "//:gpr_platform",
743        "//src/core:useful",
744    ],
745)
746
747grpc_cc_test(
748    name = "ring_buffer_test",
749    srcs = ["ring_buffer_test.cc"],
750    external_deps = ["gtest"],
751    language = "C++",
752    uses_event_engine = False,
753    uses_polling = False,
754    deps = [
755        "//:gpr_platform",
756        "//src/core:ring_buffer",
757    ],
758)
759
760grpc_cc_test(
761    name = "avl_test",
762    srcs = ["avl_test.cc"],
763    external_deps = ["gtest"],
764    language = "C++",
765    uses_event_engine = False,
766    uses_polling = False,
767    deps = [
768        "//src/core:avl",
769    ],
770)
771
772grpc_proto_fuzzer(
773    name = "avl_fuzzer",
774    srcs = ["avl_fuzzer.cc"],
775    corpus = "avl_fuzzer_corpus",
776    language = "C++",
777    proto = "avl_fuzzer.proto",
778    tags = ["no_windows"],
779    uses_event_engine = False,
780    uses_polling = False,
781    deps = [
782        "//src/core:avl",
783        "//test/core/test_util:grpc_test_util",
784    ],
785)
786
787grpc_cc_test(
788    name = "lru_cache_test",
789    srcs = ["lru_cache_test.cc"],
790    external_deps = ["gtest"],
791    language = "C++",
792    uses_event_engine = False,
793    uses_polling = False,
794    deps = [
795        "//src/core:lru_cache",
796    ],
797)
798
799grpc_fuzz_test(
800    name = "tdigest_fuzztest",
801    srcs = ["tdigest_fuzztest.cc"],
802    external_deps = [
803        "absl/types:variant",
804        "fuzztest",
805        "fuzztest_main",
806        "gtest",
807    ],
808    deps = ["//src/core:tdigest"],
809)
810
811grpc_fuzz_test(
812    name = "useful_fuzztest",
813    srcs = ["useful_fuzztest.cc"],
814    external_deps = [
815        "fuzztest",
816        "fuzztest_main",
817        "gtest",
818    ],
819    deps = ["//src/core:useful"],
820)
821