From 698a66b9c3e2343351c77f1ca5287dae67e0bdd6 Mon Sep 17 00:00:00 2001 From: Craig Tiller Date: Fri, 21 Jun 2024 10:51:04 -0700 Subject: [PATCH] [status_flag] Fix bad stringifier (#37014) Also add a test for ValueOrFailure stringification Closes #37014 COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/37014 from ctiller:status_flag_fix 8194ca3ea86a37ed97f9fca67956882045d53f95 PiperOrigin-RevId: 645438082 --- src/core/lib/promise/status_flag.h | 2 +- test/core/promise/status_flag_test.cc | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/core/lib/promise/status_flag.h b/src/core/lib/promise/status_flag.h index 683d6bdae29..5dbe224955f 100644 --- a/src/core/lib/promise/status_flag.h +++ b/src/core/lib/promise/status_flag.h @@ -263,7 +263,7 @@ class ValueOrFailure { friend void AbslStringify(Sink& sink, const ValueOrFailure& value) { if (value.ok()) { sink.Append("Success("); - sink.Append(absl::StrCat(value)); + sink.Append(absl::StrCat(*value)); sink.Append(")"); } else { sink.Append("Failure"); diff --git a/test/core/promise/status_flag_test.cc b/test/core/promise/status_flag_test.cc index 80364fbd819..229bc494fb2 100644 --- a/test/core/promise/status_flag_test.cc +++ b/test/core/promise/status_flag_test.cc @@ -38,6 +38,11 @@ TEST(StatusFlagTest, Basics) { EXPECT_FALSE(IsStatusOk(Failure{})); } +TEST(StatusFlagTest, StringifyValueOrFailure) { + EXPECT_EQ(absl::StrCat(ValueOrFailure(42)), "Success(42)"); + EXPECT_EQ(absl::StrCat(ValueOrFailure(Failure{})), "Failure"); +} + } // namespace grpc_core int main(int argc, char** argv) {