Index: base/strings/string_util_unittest.cc |
diff --git a/base/strings/string_util_unittest.cc b/base/strings/string_util_unittest.cc |
index df2226e48bc488f37b628ed002cfc790bad11b7a..7738a4e25e50464ba1547a1a79490397a6aa92f5 100644 |
--- a/base/strings/string_util_unittest.cc |
+++ b/base/strings/string_util_unittest.cc |
@@ -707,6 +707,47 @@ TEST(StringUtilTest, JoinString16) { |
EXPECT_EQ(ASCIIToUTF16("a|b|c|| "), JoinString(parts, ASCIIToUTF16("|"))); |
} |
+TEST(StringUtilTest, JoinStringPiece) { |
+ std::string separator(", "); |
+ std::vector<base::StringPiece> parts; |
+ EXPECT_EQ(base::StringPiece(), JoinStringPiece(parts, separator)); |
+ |
+ parts.push_back("a"); |
+ EXPECT_EQ("a", JoinStringPiece(parts, separator)); |
+ |
+ parts.push_back("b"); |
+ parts.push_back("c"); |
+ EXPECT_EQ("a, b, c", JoinStringPiece(parts, separator)); |
+ |
+ parts.push_back(base::StringPiece()); |
+ EXPECT_EQ("a, b, c, ", JoinStringPiece(parts, separator)); |
+ parts.push_back(" "); |
+ EXPECT_EQ("a|b|c|| ", JoinStringPiece(parts, "|")); |
+} |
+ |
+TEST(StringUtilTest, JoinStringPiece16) { |
+ string16 separator = ASCIIToUTF16(", "); |
+ std::vector<base::StringPiece16> parts; |
+ EXPECT_EQ(base::StringPiece16(), JoinStringPiece(parts, separator)); |
+ |
+ const string16 kA = ASCIIToUTF16("a"); |
+ parts.push_back(kA); |
+ EXPECT_EQ(ASCIIToUTF16("a"), JoinStringPiece(parts, separator)); |
+ |
+ const string16 kB = ASCIIToUTF16("b"); |
+ parts.push_back(kB); |
+ const string16 kC = ASCIIToUTF16("c"); |
+ parts.push_back(kC); |
+ EXPECT_EQ(ASCIIToUTF16("a, b, c"), JoinStringPiece(parts, separator)); |
+ |
+ parts.push_back(base::StringPiece16()); |
+ EXPECT_EQ(ASCIIToUTF16("a, b, c, "), JoinStringPiece(parts, separator)); |
+ const string16 kSpace = ASCIIToUTF16(" "); |
+ parts.push_back(kSpace); |
+ EXPECT_EQ(ASCIIToUTF16("a|b|c|| "), |
+ JoinStringPiece(parts, ASCIIToUTF16("|"))); |
+} |
+ |
TEST(StringUtilTest, StartsWith) { |
EXPECT_TRUE(StartsWith("javascript:url", "javascript", |
base::CompareCase::SENSITIVE)); |