Updates SpdyHeaderBlock's hashing and equality types to make the data structure case-insensitive with respect to keys.
gfe-relnote: Makes SpdyHeaderBlock case-insensitive with respect to keys. Not possible to protect.
PiperOrigin-RevId: 288035700
Change-Id: Ifdff6aed6e65f96c60e3ef9d164f7899a0a23baa
diff --git a/spdy/core/spdy_header_block_test.cc b/spdy/core/spdy_header_block_test.cc
index aad264c..806e89e 100644
--- a/spdy/core/spdy_header_block_test.cc
+++ b/spdy/core/spdy_header_block_test.cc
@@ -220,13 +220,14 @@
SpdyHeaderBlock block;
block["Foo"] = "foo";
block.AppendValueOrAddHeader("Foo", "bar");
- EXPECT_EQ(block.end(), block.find("foo"));
+ EXPECT_NE(block.end(), block.find("foo"));
EXPECT_EQ(Pair("Foo", std::string("foo\0bar", 7)), *block.find("Foo"));
- // The map is case sensitive, so both "Foo" and "foo" can be present.
+ // The map is case insensitive, so updating "foo" modifies the entry
+ // previously added.
block.AppendValueOrAddHeader("foo", "baz");
- EXPECT_THAT(block, ElementsAre(Pair("Foo", std::string("foo\0bar", 7)),
- Pair("foo", "baz")));
+ EXPECT_THAT(block,
+ ElementsAre(Pair("Foo", std::string("foo\0bar\0baz", 11))));
}
namespace {