pull/36993/head
Craig Tiller 8 months ago
parent 489f7d2524
commit 13e21204bd
  1. 1
      test/core/gprpp/BUILD
  2. 21
      test/core/gprpp/unique_type_name_test.cc

@ -415,6 +415,7 @@ grpc_cc_test(
external_deps = [ external_deps = [
"gtest", "gtest",
"absl/strings:str_format", "absl/strings:str_format",
"absl/container:flat_hash_map",
], ],
language = "c++", language = "c++",
uses_event_engine = False, uses_event_engine = False,

@ -17,10 +17,14 @@
#include <iosfwd> #include <iosfwd>
#include <map> #include <map>
#include "absl/container/flat_hash_map.h"
#include "absl/strings/str_format.h" #include "absl/strings/str_format.h"
#include "gmock/gmock.h" #include "gmock/gmock.h"
#include "gtest/gtest.h" #include "gtest/gtest.h"
using testing::Pair;
using testing::UnorderedElementsAre;
namespace grpc_core { namespace grpc_core {
// Teach gtest to print names usefully. // Teach gtest to print names usefully.
@ -113,6 +117,23 @@ TEST(UniqueTypeNameTest, UniqueTypeNameHere) {
EXPECT_NE(name1, name2); EXPECT_NE(name1, name2);
} }
TEST(UniqueTypenameTest, Stringify) {
auto name = GRPC_UNIQUE_TYPE_NAME_HERE("bob");
EXPECT_EQ("bob", absl::StrFormat("%v", name));
}
TEST(UniqueTypeNameTest, Hash) {
auto name1 = GRPC_UNIQUE_TYPE_NAME_HERE("name");
auto name2 = GRPC_UNIQUE_TYPE_NAME_HERE("name");
auto name3 = GRPC_UNIQUE_TYPE_NAME_HERE("other");
absl::flat_hash_map<UniqueTypeName, int> m;
m[name1] = 1;
m[name2] = 2;
m[name3] = 3;
EXPECT_THAT(
m, UnorderedElementsAre(Pair(name1, 1), Pair(name2, 2), Pair(name3, 3)));
}
} // namespace } // namespace
} // namespace grpc_core } // namespace grpc_core

Loading…
Cancel
Save