From f66bb084494ae8b295c02da1ad62623feb0599be Mon Sep 17 00:00:00 2001 From: Craig Tiller Date: Thu, 23 Jan 2025 23:13:32 -0800 Subject: [PATCH] x --- test/core/promise/BUILD | 22 ++++++++++++++----- test/core/promise/promise_fuzzer.cc | 11 +++++----- .../b858cb282617fb0956d960215c8e84d1ccf909c6 | 1 - ...h-4758aec0c3e382d4fb3e398d634d8da72ed0d574 | 20 ----------------- ...k-90b749c0ca79c7a11d25f4b6f0594af99fe4a78f | 12 ---------- 5 files changed, 21 insertions(+), 45 deletions(-) delete mode 100644 test/core/promise/promise_fuzzer_corpus/b858cb282617fb0956d960215c8e84d1ccf909c6 delete mode 100644 test/core/promise/promise_fuzzer_corpus/crash-4758aec0c3e382d4fb3e398d634d8da72ed0d574 delete mode 100644 test/core/promise/promise_fuzzer_corpus/leak-90b749c0ca79c7a11d25f4b6f0594af99fe4a78f diff --git a/test/core/promise/BUILD b/test/core/promise/BUILD index a7b3faeb7f6c1..871a52b161109 100644 --- a/test/core/promise/BUILD +++ b/test/core/promise/BUILD @@ -12,8 +12,8 @@ # See the License for the specific language governing permissions and # limitations under the License. -load("//bazel:grpc_build_system.bzl", "grpc_cc_library", "grpc_cc_test", "grpc_package") -load("//test/core/test_util:grpc_fuzzer.bzl", "grpc_proto_fuzzer") +load("//bazel:grpc_build_system.bzl", "grpc_cc_library", "grpc_cc_proto_library", "grpc_cc_test", "grpc_internal_proto_library", "grpc_package") +load("//test/core/test_util:grpc_fuzzer.bzl", "grpc_fuzz_test") load("//test/cpp/microbenchmarks:grpc_benchmark_config.bzl", "HISTORY", "grpc_cc_benchmark") licenses(["notice"]) @@ -521,18 +521,27 @@ grpc_cc_test( ], ) -grpc_proto_fuzzer( +grpc_internal_proto_library( + name = "promise_fuzzer_proto", + srcs = ["promise_fuzzer.proto"], +) + +grpc_cc_proto_library( + name = "promise_fuzzer_cc_proto", + deps = ["promise_fuzzer_proto"], +) + +grpc_fuzz_test( name = "promise_fuzzer", srcs = ["promise_fuzzer.cc"], - corpus = "promise_fuzzer_corpus", external_deps = [ "absl/functional:any_invocable", "absl/log:check", "absl/status", + "fuzztest", + "fuzztest_main", ], - proto = "promise_fuzzer.proto", tags = ["no_windows"], - uses_polling = False, deps = [ "//:gpr", "//:promise", @@ -543,6 +552,7 @@ grpc_proto_fuzzer( "//src/core:race", "//src/core:seq", "//test/core/test_util:grpc_test_util", + "promise_fuzzer_cc_proto", ], ) diff --git a/test/core/promise/promise_fuzzer.cc b/test/core/promise/promise_fuzzer.cc index be84cd6cb2255..c3e5bba64d04a 100644 --- a/test/core/promise/promise_fuzzer.cc +++ b/test/core/promise/promise_fuzzer.cc @@ -23,6 +23,7 @@ #include "absl/functional/any_invocable.h" #include "absl/log/check.h" #include "absl/status/status.h" +#include "fuzztest/fuzztest.h" #include "src/core/lib/promise/activity.h" #include "src/core/lib/promise/join.h" #include "src/core/lib/promise/map.h" @@ -30,7 +31,6 @@ #include "src/core/lib/promise/promise.h" #include "src/core/lib/promise/race.h" #include "src/core/lib/promise/seq.h" -#include "src/libfuzzer/libfuzzer_macro.h" #include "test/core/promise/promise_fuzzer.pb.h" bool squelch = true; @@ -329,10 +329,9 @@ class Fuzzer { // Wakers that may be scheduled std::map> wakers_; }; -} // namespace -} // namespace grpc_core +void Run(promise_fuzzer::Msg msg) { Fuzzer().Run(msg); } +FUZZ_TEST(PromiseFuzzer, Run); -DEFINE_PROTO_FUZZER(const promise_fuzzer::Msg& msg) { - grpc_core::Fuzzer().Run(msg); -} +} // namespace +} // namespace grpc_core diff --git a/test/core/promise/promise_fuzzer_corpus/b858cb282617fb0956d960215c8e84d1ccf909c6 b/test/core/promise/promise_fuzzer_corpus/b858cb282617fb0956d960215c8e84d1ccf909c6 deleted file mode 100644 index 0519ecba6ea91..0000000000000 --- a/test/core/promise/promise_fuzzer_corpus/b858cb282617fb0956d960215c8e84d1ccf909c6 +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/test/core/promise/promise_fuzzer_corpus/crash-4758aec0c3e382d4fb3e398d634d8da72ed0d574 b/test/core/promise/promise_fuzzer_corpus/crash-4758aec0c3e382d4fb3e398d634d8da72ed0d574 deleted file mode 100644 index 9b9d8c0f473b5..0000000000000 --- a/test/core/promise/promise_fuzzer_corpus/crash-4758aec0c3e382d4fb3e398d634d8da72ed0d574 +++ /dev/null @@ -1,20 +0,0 @@ -promise { - race { - promises { - cancel_from_inside { - } - } - promises { - sleep_first_n: 0 - } - promises { - sleep_first_n: 2097151999 - } - promises { - } - } -} -actions { - flush_wakeup { - } -} diff --git a/test/core/promise/promise_fuzzer_corpus/leak-90b749c0ca79c7a11d25f4b6f0594af99fe4a78f b/test/core/promise/promise_fuzzer_corpus/leak-90b749c0ca79c7a11d25f4b6f0594af99fe4a78f deleted file mode 100644 index 623431d4c6acf..0000000000000 --- a/test/core/promise/promise_fuzzer_corpus/leak-90b749c0ca79c7a11d25f4b6f0594af99fe4a78f +++ /dev/null @@ -1,12 +0,0 @@ -promise { - never { - } -} -actions { - force_wakeup { - } -} -actions { - force_wakeup { - } -}