Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(59)

Side by Side Diff: base/string_util_unittest.cc

Issue 6882108: Revert 82405 - Support more than 9 arguments for ReplaceStringPlaceholders()- support more than 9... (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Created 9 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « base/string_util.cc ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include <math.h> 5 #include <math.h>
6 #include <stdarg.h> 6 #include <stdarg.h>
7 7
8 #include <limits> 8 #include <limits>
9 #include <sstream> 9 #include <sstream>
10 10
11 #include "base/basictypes.h" 11 #include "base/basictypes.h"
(...skipping 844 matching lines...) Expand 10 before | Expand all | Expand 10 after
856 856
857 ReplaceStringPlaceholders(ASCIIToUTF16("Hello, $2. Your number is $1."), 857 ReplaceStringPlaceholders(ASCIIToUTF16("Hello, $2. Your number is $1."),
858 subst, 858 subst,
859 &offsets); 859 &offsets);
860 EXPECT_EQ(2U, offsets.size()); 860 EXPECT_EQ(2U, offsets.size());
861 EXPECT_EQ(25U, offsets[0]); 861 EXPECT_EQ(25U, offsets[0]);
862 EXPECT_EQ(7U, offsets[1]); 862 EXPECT_EQ(7U, offsets[1]);
863 offsets.clear(); 863 offsets.clear();
864 } 864 }
865 865
866 TEST(StringUtilTest, ReplaceStringPlaceholdersTooFew) {
867 // Test whether replacestringplaceholders works as expected when there
868 // are fewer inputs than outputs.
869 std::vector<string16> subst;
870 subst.push_back(ASCIIToUTF16("9a"));
871 subst.push_back(ASCIIToUTF16("8b"));
872 subst.push_back(ASCIIToUTF16("7c"));
873
874 string16 formatted =
875 ReplaceStringPlaceholders(
876 ASCIIToUTF16("$1a,$2b,$3c,$4d,$5e,$6f,$1g,$2h,$3i"), subst, NULL);
877
878 EXPECT_EQ(formatted, ASCIIToUTF16("9aa,8bb,7cc,d,e,f,9ag,8bh,7ci"));
879 }
880
881 TEST(StringUtilTest, ReplaceStringPlaceholders) { 866 TEST(StringUtilTest, ReplaceStringPlaceholders) {
882 std::vector<string16> subst; 867 std::vector<string16> subst;
883 subst.push_back(ASCIIToUTF16("9a")); 868 subst.push_back(ASCIIToUTF16("9a"));
884 subst.push_back(ASCIIToUTF16("8b")); 869 subst.push_back(ASCIIToUTF16("8b"));
885 subst.push_back(ASCIIToUTF16("7c")); 870 subst.push_back(ASCIIToUTF16("7c"));
886 subst.push_back(ASCIIToUTF16("6d")); 871 subst.push_back(ASCIIToUTF16("6d"));
887 subst.push_back(ASCIIToUTF16("5e")); 872 subst.push_back(ASCIIToUTF16("5e"));
888 subst.push_back(ASCIIToUTF16("4f")); 873 subst.push_back(ASCIIToUTF16("4f"));
889 subst.push_back(ASCIIToUTF16("3g")); 874 subst.push_back(ASCIIToUTF16("3g"));
890 subst.push_back(ASCIIToUTF16("2h")); 875 subst.push_back(ASCIIToUTF16("2h"));
891 subst.push_back(ASCIIToUTF16("1i")); 876 subst.push_back(ASCIIToUTF16("1i"));
892 877
893 string16 formatted = 878 string16 formatted =
894 ReplaceStringPlaceholders( 879 ReplaceStringPlaceholders(
895 ASCIIToUTF16("$1a,$2b,$3c,$4d,$5e,$6f,$7g,$8h,$9i"), subst, NULL); 880 ASCIIToUTF16("$1a,$2b,$3c,$4d,$5e,$6f,$7g,$8h,$9i"), subst, NULL);
896 881
897 EXPECT_EQ(formatted, ASCIIToUTF16("9aa,8bb,7cc,6dd,5ee,4ff,3gg,2hh,1ii")); 882 EXPECT_EQ(formatted, ASCIIToUTF16("9aa,8bb,7cc,6dd,5ee,4ff,3gg,2hh,1ii"));
898 } 883 }
899 884
900 TEST(StringUtilTest, ReplaceStringPlaceholdersMoreThan9Replacements) { 885 TEST(StringUtilTest, ReplaceStringPlaceholdersTooFew) {
886 // Test whether replacestringplaceholders works as expected when there
887 // are fewer inputs than outputs.
901 std::vector<string16> subst; 888 std::vector<string16> subst;
902 subst.push_back(ASCIIToUTF16("9a")); 889 subst.push_back(ASCIIToUTF16("9a"));
903 subst.push_back(ASCIIToUTF16("8b")); 890 subst.push_back(ASCIIToUTF16("8b"));
904 subst.push_back(ASCIIToUTF16("7c")); 891 subst.push_back(ASCIIToUTF16("7c"));
905 subst.push_back(ASCIIToUTF16("6d"));
906 subst.push_back(ASCIIToUTF16("5e"));
907 subst.push_back(ASCIIToUTF16("4f"));
908 subst.push_back(ASCIIToUTF16("3g"));
909 subst.push_back(ASCIIToUTF16("2h"));
910 subst.push_back(ASCIIToUTF16("1i"));
911 subst.push_back(ASCIIToUTF16("0j"));
912 subst.push_back(ASCIIToUTF16("-1k"));
913 subst.push_back(ASCIIToUTF16("-2l"));
914 subst.push_back(ASCIIToUTF16("-3m"));
915 subst.push_back(ASCIIToUTF16("-4n"));
916 892
917 string16 formatted = 893 string16 formatted =
918 ReplaceStringPlaceholders( 894 ReplaceStringPlaceholders(
919 ASCIIToUTF16("$1a,$2b,$3c,$4d,$5e,$6f,$7g,$8h,$9i," 895 ASCIIToUTF16("$1a,$2b,$3c,$4d,$5e,$6f,$1g,$2h,$3i"), subst, NULL);
920 "$10j,$11k,$12l,$13m,$14n,$1"), subst, NULL);
921 896
922 EXPECT_EQ(formatted, ASCIIToUTF16("9aa,8bb,7cc,6dd,5ee,4ff,3gg,2hh," 897 EXPECT_EQ(formatted, ASCIIToUTF16("9aa,8bb,7cc,d,e,f,9ag,8bh,7ci"));
923 "1ii,0jj,-1kk,-2ll,-3mm,-4nn,9a"));
924 } 898 }
925 899
926 TEST(StringUtilTest, StdStringReplaceStringPlaceholders) { 900 TEST(StringUtilTest, StdStringReplaceStringPlaceholders) {
927 std::vector<std::string> subst; 901 std::vector<std::string> subst;
928 subst.push_back("9a"); 902 subst.push_back("9a");
929 subst.push_back("8b"); 903 subst.push_back("8b");
930 subst.push_back("7c"); 904 subst.push_back("7c");
931 subst.push_back("6d"); 905 subst.push_back("6d");
932 subst.push_back("5e"); 906 subst.push_back("5e");
933 subst.push_back("4f"); 907 subst.push_back("4f");
(...skipping 171 matching lines...) Expand 10 before | Expand all | Expand 10 after
1105 EXPECT_FALSE(ContainsOnlyChars("Hello", "")); 1079 EXPECT_FALSE(ContainsOnlyChars("Hello", ""));
1106 1080
1107 EXPECT_TRUE(ContainsOnlyChars("", "1234")); 1081 EXPECT_TRUE(ContainsOnlyChars("", "1234"));
1108 EXPECT_TRUE(ContainsOnlyChars("1", "1234")); 1082 EXPECT_TRUE(ContainsOnlyChars("1", "1234"));
1109 EXPECT_TRUE(ContainsOnlyChars("1", "4321")); 1083 EXPECT_TRUE(ContainsOnlyChars("1", "4321"));
1110 EXPECT_TRUE(ContainsOnlyChars("123", "4321")); 1084 EXPECT_TRUE(ContainsOnlyChars("123", "4321"));
1111 EXPECT_FALSE(ContainsOnlyChars("123a", "4321")); 1085 EXPECT_FALSE(ContainsOnlyChars("123a", "4321"));
1112 } 1086 }
1113 1087
1114 } // namespace base 1088 } // namespace base
OLDNEW
« no previous file with comments | « base/string_util.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698