diff --git a/test/core/end2end/fuzzers/api_fuzzer.cc b/test/core/end2end/fuzzers/api_fuzzer.cc index 98dd58e7df5..ab506cc54fc 100644 --- a/test/core/end2end/fuzzers/api_fuzzer.cc +++ b/test/core/end2end/fuzzers/api_fuzzer.cc @@ -32,6 +32,8 @@ #include "absl/strings/str_join.h" #include "absl/strings/str_split.h" #include "absl/strings/string_view.h" +#include "absl/time/clock.h" +#include "absl/time/time.h" #include "absl/types/optional.h" #include @@ -157,9 +159,18 @@ class FuzzerDNSResolver : public grpc_core::DNSResolver { } absl::StatusOr> LookupHostnameBlocking( - absl::string_view /* name */, - absl::string_view /* default_port */) override { - GPR_ASSERT(0); + absl::string_view name, absl::string_view default_port) override { + // To mimic the resolution delay + absl::SleepFor(absl::Seconds(1)); + if (name == "server") { + std::vector addrs; + grpc_resolved_address addr; + memset(&addr, 0, sizeof(addr)); + addrs.push_back(addr); + return addrs; + } else { + return absl::UnknownError("Resolution failed"); + } } TaskHandle LookupSRV(