diff --git a/test/core/xds/BUILD b/test/core/xds/BUILD index 3991efe21f283..03fe78027837f 100644 --- a/test/core/xds/BUILD +++ b/test/core/xds/BUILD @@ -190,6 +190,7 @@ grpc_proto_fuzzer( proto = "xds_client_fuzzer.proto", proto_deps = [ "//src/proto/grpc/testing/xds/v3:discovery_proto", + "//test/core/event_engine/fuzzing_event_engine:fuzzing_event_engine_proto", ], tags = ["no_windows"], uses_event_engine = True, diff --git a/test/core/xds/xds_client_fuzzer.cc b/test/core/xds/xds_client_fuzzer.cc index 5a6c18220828a..4e775e363156d 100644 --- a/test/core/xds/xds_client_fuzzer.cc +++ b/test/core/xds/xds_client_fuzzer.cc @@ -58,9 +58,10 @@ namespace grpc_core { class Fuzzer { public: - explicit Fuzzer(absl::string_view bootstrap_json) { + Fuzzer(absl::string_view bootstrap_json, + const fuzzing_event_engine::Actions& fuzzing_ee_actions) { event_engine_ = std::make_shared( - FuzzingEventEngine::Options(), fuzzing_event_engine::Actions()); + FuzzingEventEngine::Options(), fuzzing_ee_actions); grpc_timer_manager_set_start_threaded(false); grpc_init(); auto bootstrap = GrpcXdsBootstrap::Create(bootstrap_json); @@ -354,7 +355,8 @@ class Fuzzer { bool squelch = true; DEFINE_PROTO_FUZZER(const xds_client_fuzzer::Msg& message) { - grpc_core::Fuzzer fuzzer(message.bootstrap()); + grpc_core::Fuzzer fuzzer(message.bootstrap(), + message.fuzzing_event_engine_actions()); for (int i = 0; i < message.actions_size(); i++) { fuzzer.Act(message.actions(i)); } diff --git a/test/core/xds/xds_client_fuzzer.proto b/test/core/xds/xds_client_fuzzer.proto index e2ce7aa5d4672..ae32016c64447 100644 --- a/test/core/xds/xds_client_fuzzer.proto +++ b/test/core/xds/xds_client_fuzzer.proto @@ -19,6 +19,7 @@ syntax = "proto3"; package xds_client_fuzzer; import "src/proto/grpc/testing/xds/v3/discovery.proto"; +import "test/core/event_engine/fuzzing_event_engine/fuzzing_event_engine.proto"; // We'd ideally like to use google.rpc.Status instead of creating our // own proto for this, but that winds up causing all sorts of dependency @@ -120,4 +121,5 @@ message Action { message Msg { string bootstrap = 1; repeated Action actions = 2; + fuzzing_event_engine.Actions fuzzing_event_engine_actions = 3; }