diff options
Diffstat (limited to 'src/google/protobuf/stubs/stringpiece_unittest.cc')
-rw-r--r-- | src/google/protobuf/stubs/stringpiece_unittest.cc | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/src/google/protobuf/stubs/stringpiece_unittest.cc b/src/google/protobuf/stubs/stringpiece_unittest.cc index 9b5dae13..43737a57 100644 --- a/src/google/protobuf/stubs/stringpiece_unittest.cc +++ b/src/google/protobuf/stubs/stringpiece_unittest.cc @@ -36,6 +36,7 @@ #include <vector> #include <google/protobuf/testing/googletest.h> +#include <google/protobuf/stubs/hash.h> #include <gtest/gtest.h> namespace google { @@ -745,6 +746,23 @@ TEST(StringPiece, Comparisons2) { EXPECT_TRUE(abc.ends_with("nopqrstuvwxyz")); } +TEST(StringPiece, HashFunction) { + hash_set<StringPiece> set; + + set.insert(StringPiece("hello")); + EXPECT_EQ(1, set.size()); + + // Insert a StringPiece of the same value again and should NOT increment + // size of the set. + set.insert(StringPiece("hello")); + EXPECT_EQ(1, set.size()); + + // Insert a StringPiece with different value and check that size of the set + // has been increment by one. + set.insert(StringPiece("world")); + EXPECT_EQ(2, set.size()); +} + TEST(ComparisonOpsTest, StringCompareNotAmbiguous) { EXPECT_EQ("hello", string("hello")); EXPECT_LT("hello", string("world")); |