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

Side by Side Diff: chrome/test/live_sync/two_client_bookmarks_sync_test.cc

Issue 7461109: Allow sync integration tests to operate on multiple datatypes: Typed Urls (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: CR feedback; rebase Created 9 years, 4 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
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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 "base/rand_util.h" 5 #include "base/rand_util.h"
6 #include "chrome/browser/profiles/profile.h" 6 #include "chrome/browser/profiles/profile.h"
7 #include "chrome/browser/sync/profile_sync_service_harness.h" 7 #include "chrome/browser/sync/profile_sync_service_harness.h"
8 #include "chrome/test/live_sync/bookmarks_helper.h" 8 #include "chrome/test/live_sync/bookmarks_helper.h"
9 #include "chrome/test/live_sync/live_sync_test.h" 9 #include "chrome/test/live_sync/live_sync_test.h"
10 10
11 using bookmarks_helper::AddFolder;
12 using bookmarks_helper::AddURL;
13 using bookmarks_helper::AllModelsMatch;
14 using bookmarks_helper::AllModelsMatchVerifier;
15 using bookmarks_helper::ContainsDuplicateBookmarks;
16 using bookmarks_helper::CountBookmarksWithTitlesMatching;
17 using bookmarks_helper::CreateFavicon;
18 using bookmarks_helper::EnableEncryption;
19 using bookmarks_helper::GetBookmarkBarNode;
20 using bookmarks_helper::GetOtherNode;
21 using bookmarks_helper::GetUniqueNodeByURL;
22 using bookmarks_helper::IndexedFolderName;
23 using bookmarks_helper::IndexedSubfolderName;
24 using bookmarks_helper::IndexedSubsubfolderName;
25 using bookmarks_helper::IndexedURL;
26 using bookmarks_helper::IndexedURLTitle;
27 using bookmarks_helper::IsEncrypted;
28 using bookmarks_helper::Move;
29 using bookmarks_helper::Remove;
30 using bookmarks_helper::ReverseChildOrder;
31 using bookmarks_helper::SetFavicon;
32 using bookmarks_helper::SetTitle;
33 using bookmarks_helper::SetURL;
34 using bookmarks_helper::SortChildren;
35
11 const std::string kGenericURL = "http://www.host.ext:1234/path/filename"; 36 const std::string kGenericURL = "http://www.host.ext:1234/path/filename";
12 const std::wstring kGenericURLTitle = L"URL Title"; 37 const std::wstring kGenericURLTitle = L"URL Title";
13 const std::wstring kGenericFolderName = L"Folder Name"; 38 const std::wstring kGenericFolderName = L"Folder Name";
14 const std::wstring kGenericSubfolderName = L"Subfolder Name"; 39 const std::wstring kGenericSubfolderName = L"Subfolder Name";
15 const std::wstring kGenericSubsubfolderName = L"Subsubfolder Name"; 40 const std::wstring kGenericSubsubfolderName = L"Subsubfolder Name";
16 41
17 class TwoClientBookmarksSyncTest : public LiveSyncTest { 42 class TwoClientBookmarksSyncTest : public LiveSyncTest {
18 public: 43 public:
19 TwoClientBookmarksSyncTest() : LiveSyncTest(TWO_CLIENT) {} 44 TwoClientBookmarksSyncTest() : LiveSyncTest(TWO_CLIENT) {}
20 virtual ~TwoClientBookmarksSyncTest() {} 45 virtual ~TwoClientBookmarksSyncTest() {}
21 46
22 private: 47 private:
23 DISALLOW_COPY_AND_ASSIGN(TwoClientBookmarksSyncTest); 48 DISALLOW_COPY_AND_ASSIGN(TwoClientBookmarksSyncTest);
24 }; 49 };
25 50
26 const std::vector<unsigned char> GenericFavicon() { 51 const std::vector<unsigned char> GenericFavicon() {
27 return BookmarksHelper::CreateFavicon(254); 52 return CreateFavicon(254);
28 } 53 }
29 54
30 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, Sanity) { 55 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, Sanity) {
31 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 56 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
32 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 57 ASSERT_TRUE(AllModelsMatchVerifier());
33 58
34 GURL google_url("http://www.google.com"); 59 GURL google_url("http://www.google.com");
35 ASSERT_TRUE(BookmarksHelper::AddURL(0, L"Google", google_url) != NULL); 60 ASSERT_TRUE(AddURL(0, L"Google", google_url) != NULL);
36 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 61 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
37 ASSERT_TRUE(BookmarksHelper::AddURL( 62 ASSERT_TRUE(AddURL(1, L"Yahoo", GURL("http://www.yahoo.com")) != NULL);
38 1, L"Yahoo", GURL("http://www.yahoo.com")) != NULL);
39 ASSERT_TRUE(GetClient(1)->AwaitMutualSyncCycleCompletion(GetClient(0))); 63 ASSERT_TRUE(GetClient(1)->AwaitMutualSyncCycleCompletion(GetClient(0)));
40 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 64 ASSERT_TRUE(AllModelsMatchVerifier());
41 65
42 const BookmarkNode* new_folder = 66 const BookmarkNode* new_folder = AddFolder(0, 2, L"New Folder");
43 BookmarksHelper::AddFolder(0, 2, L"New Folder"); 67 Move(0, GetUniqueNodeByURL(0, google_url), new_folder, 0);
44 BookmarksHelper::Move( 68 SetTitle(0, GetBookmarkBarNode(0)->GetChild(0), L"Yahoo!!");
45 0, BookmarksHelper::GetUniqueNodeByURL(0, google_url), new_folder, 0); 69 ASSERT_TRUE(AddURL(0, GetBookmarkBarNode(0), 1, L"CNN",
46 BookmarksHelper::SetTitle( 70 GURL("http://www.cnn.com")) != NULL);
47 0, BookmarksHelper::GetBookmarkBarNode(0)->GetChild(0), L"Yahoo!!"); 71 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
48 ASSERT_TRUE(BookmarksHelper::AddURL( 72 ASSERT_TRUE(AllModelsMatchVerifier());
49 0, BookmarksHelper::GetBookmarkBarNode(0), 1, L"CNN", 73
50 GURL("http://www.cnn.com")) != NULL); 74 ASSERT_TRUE(AddURL(1, L"Facebook", GURL("http://www.facebook.com")) != NULL);
51 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
52 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier());
53
54 ASSERT_TRUE(BookmarksHelper::AddURL(
55 1, L"Facebook", GURL("http://www.facebook.com")) != NULL);
56 ASSERT_TRUE(GetClient(1)->AwaitMutualSyncCycleCompletion(GetClient(0))); 75 ASSERT_TRUE(GetClient(1)->AwaitMutualSyncCycleCompletion(GetClient(0)));
57 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 76 ASSERT_TRUE(AllModelsMatchVerifier());
58 77
59 BookmarksHelper::SortChildren(1, BookmarksHelper::GetBookmarkBarNode(1)); 78 SortChildren(1, GetBookmarkBarNode(1));
60 ASSERT_TRUE(GetClient(1)->AwaitMutualSyncCycleCompletion(GetClient(0))); 79 ASSERT_TRUE(GetClient(1)->AwaitMutualSyncCycleCompletion(GetClient(0)));
61 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 80 ASSERT_TRUE(AllModelsMatchVerifier());
62 81
63 DisableVerifier(); 82 DisableVerifier();
64 BookmarksHelper::SetTitle( 83 SetTitle(0, GetUniqueNodeByURL(0, google_url), L"Google++");
65 0, BookmarksHelper::GetUniqueNodeByURL(0, google_url), L"Google++"); 84 SetTitle(1, GetUniqueNodeByURL(1, google_url), L"Google--");
66 BookmarksHelper::SetTitle(
67 1, BookmarksHelper::GetUniqueNodeByURL(1, google_url), L"Google--");
68 ASSERT_TRUE(AwaitQuiescence()); 85 ASSERT_TRUE(AwaitQuiescence());
69 ASSERT_TRUE(BookmarksHelper::AllModelsMatch()); 86 ASSERT_TRUE(AllModelsMatch());
70 } 87 }
71 88
72 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, SimultaneousURLChanges) { 89 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, SimultaneousURLChanges) {
73 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 90 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
74 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 91 ASSERT_TRUE(AllModelsMatchVerifier());
75 92
76 GURL initial_url("http://www.google.com"); 93 GURL initial_url("http://www.google.com");
77 GURL second_url("http://www.google.com/abc"); 94 GURL second_url("http://www.google.com/abc");
78 GURL third_url("http://www.google.com/def"); 95 GURL third_url("http://www.google.com/def");
79 std::wstring title = L"Google"; 96 std::wstring title = L"Google";
80 97
81 ASSERT_TRUE(BookmarksHelper::AddURL(0, title, initial_url) != NULL); 98 ASSERT_TRUE(AddURL(0, title, initial_url) != NULL);
82 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 99 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
83 100
84 DisableVerifier(); 101 DisableVerifier();
85 ASSERT_TRUE(BookmarksHelper::SetURL( 102 ASSERT_TRUE(SetURL(
86 0, BookmarksHelper::GetUniqueNodeByURL( 103 0, GetUniqueNodeByURL(0, initial_url), second_url) != NULL);
87 0, initial_url), second_url) != NULL); 104 ASSERT_TRUE(SetURL(
88 ASSERT_TRUE(BookmarksHelper::SetURL( 105 1, GetUniqueNodeByURL(1, initial_url), third_url) != NULL);
89 1, BookmarksHelper::GetUniqueNodeByURL(
90 1, initial_url), third_url) != NULL);
91 ASSERT_TRUE(AwaitQuiescence()); 106 ASSERT_TRUE(AwaitQuiescence());
92 ASSERT_TRUE(BookmarksHelper::AllModelsMatch()); 107 ASSERT_TRUE(AllModelsMatch());
93 108
94 BookmarksHelper::SetTitle( 109 SetTitle(0, GetBookmarkBarNode(0)->GetChild(0), L"Google1");
95 0, BookmarksHelper::GetBookmarkBarNode(0)->GetChild(0), L"Google1"); 110 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
96 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 111 ASSERT_TRUE(AllModelsMatch());
97 ASSERT_TRUE(BookmarksHelper::AllModelsMatch());
98 } 112 }
99 113
100 // Test Scribe ID - 370558. 114 // Test Scribe ID - 370558.
101 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, SC_AddFirstFolder) { 115 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, SC_AddFirstFolder) {
102 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 116 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
103 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 117 ASSERT_TRUE(AllModelsMatchVerifier());
104 118
105 ASSERT_TRUE(BookmarksHelper::AddFolder(0, kGenericFolderName) != NULL); 119 ASSERT_TRUE(AddFolder(0, kGenericFolderName) != NULL);
106 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 120 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
107 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 121 ASSERT_TRUE(AllModelsMatchVerifier());
108 } 122 }
109 123
110 // Test Scribe ID - 370559. 124 // Test Scribe ID - 370559.
111 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 125 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
112 SC_AddFirstBMWithoutFavicon) { 126 SC_AddFirstBMWithoutFavicon) {
113 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 127 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
114 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 128 ASSERT_TRUE(AllModelsMatchVerifier());
115 129
116 ASSERT_TRUE(BookmarksHelper::AddURL( 130 ASSERT_TRUE(AddURL(0, kGenericURLTitle, GURL(kGenericURL)) != NULL);
117 0, kGenericURLTitle, GURL(kGenericURL)) != NULL); 131 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
118 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 132 ASSERT_TRUE(AllModelsMatchVerifier());
119 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier());
120 } 133 }
121 134
122 // Test Scribe ID - 370489. 135 // Test Scribe ID - 370489.
123 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 136 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
124 SC_AddFirstBMWithFavicon) { 137 SC_AddFirstBMWithFavicon) {
125 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 138 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
126 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 139 ASSERT_TRUE(AllModelsMatchVerifier());
127 140
128 const BookmarkNode* bookmark = BookmarksHelper::AddURL( 141 const BookmarkNode* bookmark = AddURL(0, kGenericURLTitle, GURL(kGenericURL));
129 0, kGenericURLTitle, GURL(kGenericURL));
130 ASSERT_TRUE(bookmark != NULL); 142 ASSERT_TRUE(bookmark != NULL);
131 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 143 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
132 BookmarksHelper::SetFavicon(0, bookmark, GenericFavicon()); 144 SetFavicon(0, bookmark, GenericFavicon());
133 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 145 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
134 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 146 ASSERT_TRUE(AllModelsMatchVerifier());
135 } 147 }
136 148
137 // Test Scribe ID - 370560. 149 // Test Scribe ID - 370560.
138 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, SC_AddNonHTTPBMs) { 150 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, SC_AddNonHTTPBMs) {
139 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 151 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
140 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 152 ASSERT_TRUE(AllModelsMatchVerifier());
141 153
142 ASSERT_TRUE(BookmarksHelper::AddURL( 154 ASSERT_TRUE(AddURL(
143 0, L"FTP URL", GURL("ftp://user:password@host:1234/path")) != NULL); 155 0, L"FTP URL", GURL("ftp://user:password@host:1234/path")) != NULL);
144 ASSERT_TRUE(BookmarksHelper::AddURL( 156 ASSERT_TRUE(AddURL(0, L"File URL", GURL("file://host/path")) != NULL);
145 0, L"File URL", GURL("file://host/path")) != NULL); 157 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
146 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 158 ASSERT_TRUE(AllModelsMatchVerifier());
147 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier());
148 } 159 }
149 160
150 // Test Scribe ID - 370561. 161 // Test Scribe ID - 370561.
151 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 162 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
152 SC_AddFirstBMUnderFolder) { 163 SC_AddFirstBMUnderFolder) {
153 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 164 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
154 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 165 ASSERT_TRUE(AllModelsMatchVerifier());
155 166
156 const BookmarkNode* folder = 167 const BookmarkNode* folder = AddFolder(0, kGenericFolderName);
157 BookmarksHelper::AddFolder(0, kGenericFolderName);
158 ASSERT_TRUE(folder != NULL); 168 ASSERT_TRUE(folder != NULL);
159 ASSERT_TRUE(BookmarksHelper::AddURL( 169 ASSERT_TRUE(AddURL(
160 0, folder, 0, kGenericURLTitle, GURL(kGenericURL)) != NULL); 170 0, folder, 0, kGenericURLTitle, GURL(kGenericURL)) != NULL);
161 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 171 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
162 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 172 ASSERT_TRUE(AllModelsMatchVerifier());
163 } 173 }
164 174
165 // Test Scribe ID - 370562. 175 // Test Scribe ID - 370562.
166 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 176 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
167 SC_AddSeveralBMsUnderBMBarAndOtherBM) { 177 SC_AddSeveralBMsUnderBMBarAndOtherBM) {
168 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 178 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
169 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 179 ASSERT_TRUE(AllModelsMatchVerifier());
170 180
171 for (int i = 0; i < 20; ++i) { 181 for (int i = 0; i < 20; ++i) {
172 std::wstring title = BookmarksHelper::IndexedURLTitle(i); 182 std::wstring title = IndexedURLTitle(i);
173 GURL url = GURL(BookmarksHelper::IndexedURL(i)); 183 GURL url = GURL(IndexedURL(i));
174 ASSERT_TRUE(BookmarksHelper::AddURL(0, i, title, url) != NULL); 184 ASSERT_TRUE(AddURL(0, i, title, url) != NULL);
175 ASSERT_TRUE(BookmarksHelper::AddURL( 185 ASSERT_TRUE(AddURL(
176 0, BookmarksHelper::GetOtherNode(0), i, title, url) != NULL); 186 0, GetOtherNode(0), i, title, url) != NULL);
177 } 187 }
178 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 188 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
179 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 189 ASSERT_TRUE(AllModelsMatchVerifier());
180 } 190 }
181 191
182 // Test Scribe ID - 370563. 192 // Test Scribe ID - 370563.
183 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 193 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
184 SC_AddSeveralBMsAndFolders) { 194 SC_AddSeveralBMsAndFolders) {
185 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 195 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
186 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 196 ASSERT_TRUE(AllModelsMatchVerifier());
187 197
188 for (int i = 0; i < 15; ++i) { 198 for (int i = 0; i < 15; ++i) {
189 if (base::RandDouble() > 0.6) { 199 if (base::RandDouble() > 0.6) {
190 std::wstring title = BookmarksHelper::IndexedURLTitle(i); 200 std::wstring title = IndexedURLTitle(i);
191 GURL url = GURL(BookmarksHelper::IndexedURL(i)); 201 GURL url = GURL(IndexedURL(i));
192 ASSERT_TRUE(BookmarksHelper::AddURL(0, i, title, url) != NULL); 202 ASSERT_TRUE(AddURL(0, i, title, url) != NULL);
193 } else { 203 } else {
194 std::wstring title = BookmarksHelper::IndexedFolderName(i); 204 std::wstring title = IndexedFolderName(i);
195 const BookmarkNode* folder = BookmarksHelper::AddFolder(0, i, title); 205 const BookmarkNode* folder = AddFolder(0, i, title);
196 ASSERT_TRUE(folder != NULL); 206 ASSERT_TRUE(folder != NULL);
197 if (base::RandDouble() > 0.4) { 207 if (base::RandDouble() > 0.4) {
198 for (int i = 0; i < 20; ++i) { 208 for (int i = 0; i < 20; ++i) {
199 std::wstring title = BookmarksHelper::IndexedURLTitle(i); 209 std::wstring title = IndexedURLTitle(i);
200 GURL url = GURL(BookmarksHelper::IndexedURL(i)); 210 GURL url = GURL(IndexedURL(i));
201 ASSERT_TRUE( 211 ASSERT_TRUE(
202 BookmarksHelper::AddURL(0, folder, i, title, url) != NULL); 212 AddURL(0, folder, i, title, url) != NULL);
203 } 213 }
204 } 214 }
205 } 215 }
206 } 216 }
207 for (int i = 0; i < 10; i++) { 217 for (int i = 0; i < 10; i++) {
208 std::wstring title = BookmarksHelper::IndexedURLTitle(i); 218 std::wstring title = IndexedURLTitle(i);
209 GURL url = GURL(BookmarksHelper::IndexedURL(i)); 219 GURL url = GURL(IndexedURL(i));
210 ASSERT_TRUE(BookmarksHelper::AddURL( 220 ASSERT_TRUE(AddURL(0, GetOtherNode(0), i, title, url) != NULL);
211 0, BookmarksHelper::GetOtherNode(0), i, title, url) != NULL);
212 } 221 }
213 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 222 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
214 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 223 ASSERT_TRUE(AllModelsMatchVerifier());
215 } 224 }
216 225
217 // Test Scribe ID - 370641. 226 // Test Scribe ID - 370641.
218 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 227 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
219 SC_DuplicateBMWithDifferentURLSameName) { 228 SC_DuplicateBMWithDifferentURLSameName) {
220 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 229 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
221 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 230 ASSERT_TRUE(AllModelsMatchVerifier());
222 231
223 GURL url0 = GURL(BookmarksHelper::IndexedURL(0)); 232 GURL url0 = GURL(IndexedURL(0));
224 GURL url1 = GURL(BookmarksHelper::IndexedURL(1)); 233 GURL url1 = GURL(IndexedURL(1));
225 ASSERT_TRUE(BookmarksHelper::AddURL(0, kGenericURLTitle, url0) != NULL); 234 ASSERT_TRUE(AddURL(0, kGenericURLTitle, url0) != NULL);
226 ASSERT_TRUE(BookmarksHelper::AddURL(0, kGenericURLTitle, url1) != NULL); 235 ASSERT_TRUE(AddURL(0, kGenericURLTitle, url1) != NULL);
227 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 236 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
228 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 237 ASSERT_TRUE(AllModelsMatchVerifier());
229 } 238 }
230 239
231 // Test Scribe ID - 370639 - Add bookmarks with different name and same URL. 240 // Test Scribe ID - 370639 - Add bookmarks with different name and same URL.
232 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 241 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
233 SC_DuplicateBookmarksWithSameURL) { 242 SC_DuplicateBookmarksWithSameURL) {
234 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 243 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
235 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 244 ASSERT_TRUE(AllModelsMatchVerifier());
236 245
237 std::wstring title0 = BookmarksHelper::IndexedURLTitle(0); 246 std::wstring title0 = IndexedURLTitle(0);
238 std::wstring title1 = BookmarksHelper::IndexedURLTitle(1); 247 std::wstring title1 = IndexedURLTitle(1);
239 ASSERT_TRUE(BookmarksHelper::AddURL(0, title0, GURL(kGenericURL)) != NULL); 248 ASSERT_TRUE(AddURL(0, title0, GURL(kGenericURL)) != NULL);
240 ASSERT_TRUE(BookmarksHelper::AddURL(0, title1, GURL(kGenericURL)) != NULL); 249 ASSERT_TRUE(AddURL(0, title1, GURL(kGenericURL)) != NULL);
241 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 250 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
242 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 251 ASSERT_TRUE(AllModelsMatchVerifier());
243 } 252 }
244 253
245 // Test Scribe ID - 371817. 254 // Test Scribe ID - 371817.
246 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, SC_RenameBMName) { 255 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, SC_RenameBMName) {
247 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 256 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
248 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 257 ASSERT_TRUE(AllModelsMatchVerifier());
249 258
250 std::wstring title = BookmarksHelper::IndexedURLTitle(1); 259 std::wstring title = IndexedURLTitle(1);
251 const BookmarkNode* bookmark = 260 const BookmarkNode* bookmark = AddURL(0, title, GURL(kGenericURL));
252 BookmarksHelper::AddURL(0, title, GURL(kGenericURL));
253 ASSERT_TRUE(bookmark != NULL); 261 ASSERT_TRUE(bookmark != NULL);
254 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 262 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
255 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 263 ASSERT_TRUE(AllModelsMatchVerifier());
256 264
257 std::wstring new_title = BookmarksHelper::IndexedURLTitle(2); 265 std::wstring new_title = IndexedURLTitle(2);
258 BookmarksHelper::SetTitle(0, bookmark, new_title); 266 SetTitle(0, bookmark, new_title);
259 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 267 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
260 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 268 ASSERT_TRUE(AllModelsMatchVerifier());
261 } 269 }
262 270
263 // Test Scribe ID - 371822. 271 // Test Scribe ID - 371822.
264 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, SC_RenameBMURL) { 272 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, SC_RenameBMURL) {
265 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 273 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
266 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 274 ASSERT_TRUE(AllModelsMatchVerifier());
267 275
268 GURL url = GURL(BookmarksHelper::IndexedURL(1)); 276 GURL url = GURL(IndexedURL(1));
269 const BookmarkNode* bookmark = 277 const BookmarkNode* bookmark = AddURL(0, kGenericURLTitle, url);
270 BookmarksHelper::AddURL(0, kGenericURLTitle, url);
271 ASSERT_TRUE(bookmark != NULL); 278 ASSERT_TRUE(bookmark != NULL);
272 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 279 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
273 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 280 ASSERT_TRUE(AllModelsMatchVerifier());
274 281
275 GURL new_url = GURL(BookmarksHelper::IndexedURL(2)); 282 GURL new_url = GURL(IndexedURL(2));
276 ASSERT_TRUE(BookmarksHelper::SetURL(0, bookmark, new_url) != NULL); 283 ASSERT_TRUE(SetURL(0, bookmark, new_url) != NULL);
277 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 284 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
278 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 285 ASSERT_TRUE(AllModelsMatchVerifier());
279 } 286 }
280 287
281 288
282 // Test Scribe ID - 371818 - Renaming the same bookmark name twice. 289 // Test Scribe ID - 371818 - Renaming the same bookmark name twice.
283 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 290 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
284 SC_TwiceRenamingBookmarkName) { 291 SC_TwiceRenamingBookmarkName) {
285 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 292 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
286 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 293 ASSERT_TRUE(AllModelsMatchVerifier());
287 294
288 std::wstring title = BookmarksHelper::IndexedURLTitle(1); 295 std::wstring title = IndexedURLTitle(1);
289 const BookmarkNode* bookmark = 296 const BookmarkNode* bookmark = AddURL(0, title, GURL(kGenericURL));
290 BookmarksHelper::AddURL(0, title, GURL(kGenericURL));
291 ASSERT_TRUE(bookmark != NULL); 297 ASSERT_TRUE(bookmark != NULL);
292 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 298 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
293 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 299 ASSERT_TRUE(AllModelsMatchVerifier());
294 300
295 std::wstring new_title = BookmarksHelper::IndexedURLTitle(2); 301 std::wstring new_title = IndexedURLTitle(2);
296 BookmarksHelper::SetTitle(0, bookmark, new_title); 302 SetTitle(0, bookmark, new_title);
297 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 303 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
298 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 304 ASSERT_TRUE(AllModelsMatchVerifier());
299 305
300 BookmarksHelper::SetTitle(0, bookmark, title); 306 SetTitle(0, bookmark, title);
301 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 307 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
302 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 308 ASSERT_TRUE(AllModelsMatchVerifier());
303 } 309 }
304 310
305 // Test Scribe ID - 371823 - Renaming the same bookmark URL twice. 311 // Test Scribe ID - 371823 - Renaming the same bookmark URL twice.
306 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 312 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
307 SC_TwiceRenamingBookmarkURL) { 313 SC_TwiceRenamingBookmarkURL) {
308 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 314 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
309 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 315 ASSERT_TRUE(AllModelsMatchVerifier());
310 316
311 GURL url = GURL(BookmarksHelper::IndexedURL(1)); 317 GURL url = GURL(IndexedURL(1));
312 const BookmarkNode* bookmark = 318 const BookmarkNode* bookmark = AddURL(0, kGenericURLTitle, url);
313 BookmarksHelper::AddURL(0, kGenericURLTitle, url);
314 ASSERT_TRUE(bookmark != NULL); 319 ASSERT_TRUE(bookmark != NULL);
315 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 320 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
316 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 321 ASSERT_TRUE(AllModelsMatchVerifier());
317 322
318 GURL new_url = GURL(BookmarksHelper::IndexedURL(2)); 323 GURL new_url = GURL(IndexedURL(2));
319 ASSERT_TRUE(BookmarksHelper::SetURL(0, bookmark, new_url) != NULL); 324 ASSERT_TRUE(SetURL(0, bookmark, new_url) != NULL);
320 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 325 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
321 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 326 ASSERT_TRUE(AllModelsMatchVerifier());
322 327
323 ASSERT_TRUE(BookmarksHelper::SetURL(0, bookmark, url) != NULL); 328 ASSERT_TRUE(SetURL(0, bookmark, url) != NULL);
324 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 329 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
325 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 330 ASSERT_TRUE(AllModelsMatchVerifier());
326 } 331 }
327 332
328 // Test Scribe ID - 371824. 333 // Test Scribe ID - 371824.
329 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, SC_RenameBMFolder) { 334 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, SC_RenameBMFolder) {
330 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 335 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
331 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 336 ASSERT_TRUE(AllModelsMatchVerifier());
332 337
333 std::wstring title = BookmarksHelper::IndexedFolderName(1); 338 std::wstring title = IndexedFolderName(1);
334 const BookmarkNode* folder = BookmarksHelper::AddFolder(0, title); 339 const BookmarkNode* folder = AddFolder(0, title);
335 ASSERT_TRUE(BookmarksHelper::AddURL( 340 ASSERT_TRUE(AddURL(
336 0, folder, 0, kGenericURLTitle, GURL(kGenericURL)) != NULL); 341 0, folder, 0, kGenericURLTitle, GURL(kGenericURL)) != NULL);
337 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 342 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
338 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 343 ASSERT_TRUE(AllModelsMatchVerifier());
339 344
340 std::wstring new_title = BookmarksHelper::IndexedFolderName(2); 345 std::wstring new_title = IndexedFolderName(2);
341 BookmarksHelper::SetTitle(0, folder, new_title); 346 SetTitle(0, folder, new_title);
342 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 347 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
343 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 348 ASSERT_TRUE(AllModelsMatchVerifier());
344 } 349 }
345 350
346 // Test Scribe ID - 371825. 351 // Test Scribe ID - 371825.
347 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, SC_RenameEmptyBMFolder) { 352 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, SC_RenameEmptyBMFolder) {
348 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 353 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
349 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 354 ASSERT_TRUE(AllModelsMatchVerifier());
350 355
351 std::wstring title = BookmarksHelper::IndexedFolderName(1); 356 std::wstring title = IndexedFolderName(1);
352 const BookmarkNode* folder = BookmarksHelper::AddFolder(0, title); 357 const BookmarkNode* folder = AddFolder(0, title);
353 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 358 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
354 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 359 ASSERT_TRUE(AllModelsMatchVerifier());
355 360
356 std::wstring new_title = BookmarksHelper::IndexedFolderName(2); 361 std::wstring new_title = IndexedFolderName(2);
357 BookmarksHelper::SetTitle(0, folder, new_title); 362 SetTitle(0, folder, new_title);
358 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 363 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
359 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 364 ASSERT_TRUE(AllModelsMatchVerifier());
360 } 365 }
361 366
362 // Test Scribe ID - 371826. 367 // Test Scribe ID - 371826.
363 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 368 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
364 SC_RenameBMFolderWithLongHierarchy) { 369 SC_RenameBMFolderWithLongHierarchy) {
365 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 370 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
366 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 371 ASSERT_TRUE(AllModelsMatchVerifier());
367 372
368 std::wstring title = BookmarksHelper::IndexedFolderName(1); 373 std::wstring title = IndexedFolderName(1);
369 const BookmarkNode* folder = BookmarksHelper::AddFolder(0, title); 374 const BookmarkNode* folder = AddFolder(0, title);
370 ASSERT_TRUE(folder != NULL); 375 ASSERT_TRUE(folder != NULL);
371 for (int i = 0; i < 120; ++i) { 376 for (int i = 0; i < 120; ++i) {
372 if (base::RandDouble() > 0.15) { 377 if (base::RandDouble() > 0.15) {
373 std::wstring title = BookmarksHelper::IndexedURLTitle(i); 378 std::wstring title = IndexedURLTitle(i);
374 GURL url = GURL(BookmarksHelper::IndexedURL(i)); 379 GURL url = GURL(IndexedURL(i));
375 ASSERT_TRUE(BookmarksHelper::AddURL(0, folder, i, title, url) != NULL); 380 ASSERT_TRUE(AddURL(0, folder, i, title, url) != NULL);
376 } else { 381 } else {
377 std::wstring title = BookmarksHelper::IndexedSubfolderName(i); 382 std::wstring title = IndexedSubfolderName(i);
378 ASSERT_TRUE(BookmarksHelper::AddFolder(0, folder, i, title) != NULL); 383 ASSERT_TRUE(AddFolder(0, folder, i, title) != NULL);
379 } 384 }
380 } 385 }
381 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 386 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
382 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 387 ASSERT_TRUE(AllModelsMatchVerifier());
383 388
384 std::wstring new_title = BookmarksHelper::IndexedFolderName(2); 389 std::wstring new_title = IndexedFolderName(2);
385 BookmarksHelper::SetTitle(0, folder, new_title); 390 SetTitle(0, folder, new_title);
386 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 391 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
387 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 392 ASSERT_TRUE(AllModelsMatchVerifier());
388 } 393 }
389 394
390 // Test Scribe ID - 371827. 395 // Test Scribe ID - 371827.
391 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 396 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
392 SC_RenameBMFolderThatHasParentAndChildren) { 397 SC_RenameBMFolderThatHasParentAndChildren) {
393 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 398 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
394 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 399 ASSERT_TRUE(AllModelsMatchVerifier());
395 400
396 const BookmarkNode* folder = 401 const BookmarkNode* folder = AddFolder(0, kGenericFolderName);
397 BookmarksHelper::AddFolder(0, kGenericFolderName);
398 ASSERT_TRUE(folder != NULL); 402 ASSERT_TRUE(folder != NULL);
399 for (int i = 1; i < 15; ++i) { 403 for (int i = 1; i < 15; ++i) {
400 std::wstring title = BookmarksHelper::IndexedURLTitle(i); 404 std::wstring title = IndexedURLTitle(i);
401 GURL url = GURL(BookmarksHelper::IndexedURL(i)); 405 GURL url = GURL(IndexedURL(i));
402 ASSERT_TRUE(BookmarksHelper::AddURL(0, i, title, url) != NULL); 406 ASSERT_TRUE(AddURL(0, i, title, url) != NULL);
403 } 407 }
404 std::wstring title = BookmarksHelper::IndexedSubfolderName(1); 408 std::wstring title = IndexedSubfolderName(1);
405 const BookmarkNode* subfolder = 409 const BookmarkNode* subfolder = AddFolder(0, folder, 0, title);
406 BookmarksHelper::AddFolder(0, folder, 0, title);
407 for (int i = 0; i < 120; ++i) { 410 for (int i = 0; i < 120; ++i) {
408 if (base::RandDouble() > 0.15) { 411 if (base::RandDouble() > 0.15) {
409 std::wstring title = BookmarksHelper::IndexedURLTitle(i); 412 std::wstring title = IndexedURLTitle(i);
410 GURL url = GURL(BookmarksHelper::IndexedURL(i)); 413 GURL url = GURL(IndexedURL(i));
411 ASSERT_TRUE(BookmarksHelper::AddURL(0, subfolder, i, title, url) != NULL); 414 ASSERT_TRUE(AddURL(0, subfolder, i, title, url) != NULL);
412 } else { 415 } else {
413 std::wstring title = BookmarksHelper::IndexedSubsubfolderName(i); 416 std::wstring title = IndexedSubsubfolderName(i);
414 ASSERT_TRUE(BookmarksHelper::AddFolder(0, subfolder, i, title) != NULL); 417 ASSERT_TRUE(AddFolder(0, subfolder, i, title) != NULL);
415 } 418 }
416 } 419 }
417 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 420 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
418 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 421 ASSERT_TRUE(AllModelsMatchVerifier());
419 422
420 std::wstring new_title = BookmarksHelper::IndexedSubfolderName(2); 423 std::wstring new_title = IndexedSubfolderName(2);
421 BookmarksHelper::SetTitle(0, subfolder, new_title); 424 SetTitle(0, subfolder, new_title);
422 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 425 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
423 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 426 ASSERT_TRUE(AllModelsMatchVerifier());
424 } 427 }
425 428
426 // Test Scribe ID - 371828. 429 // Test Scribe ID - 371828.
427 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, SC_RenameBMNameAndURL) { 430 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, SC_RenameBMNameAndURL) {
428 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 431 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
429 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 432 ASSERT_TRUE(AllModelsMatchVerifier());
430 433
431 GURL url = GURL(BookmarksHelper::IndexedURL(1)); 434 GURL url = GURL(IndexedURL(1));
432 std::wstring title = BookmarksHelper::IndexedURLTitle(1); 435 std::wstring title = IndexedURLTitle(1);
433 const BookmarkNode* bookmark = BookmarksHelper::AddURL(0, title, url); 436 const BookmarkNode* bookmark = AddURL(0, title, url);
434 ASSERT_TRUE(bookmark != NULL); 437 ASSERT_TRUE(bookmark != NULL);
435 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 438 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
436 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 439 ASSERT_TRUE(AllModelsMatchVerifier());
437 440
438 GURL new_url = GURL(BookmarksHelper::IndexedURL(2)); 441 GURL new_url = GURL(IndexedURL(2));
439 std::wstring new_title = BookmarksHelper::IndexedURLTitle(2); 442 std::wstring new_title = IndexedURLTitle(2);
440 bookmark = BookmarksHelper::SetURL(0, bookmark, new_url); 443 bookmark = SetURL(0, bookmark, new_url);
441 ASSERT_TRUE(bookmark != NULL); 444 ASSERT_TRUE(bookmark != NULL);
442 BookmarksHelper::SetTitle(0, bookmark, new_title); 445 SetTitle(0, bookmark, new_title);
443 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 446 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
444 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 447 ASSERT_TRUE(AllModelsMatchVerifier());
445 } 448 }
446 449
447 // Test Scribe ID - 371832. 450 // Test Scribe ID - 371832.
448 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 451 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
449 SC_DeleteBMEmptyAccountAfterwards) { 452 SC_DeleteBMEmptyAccountAfterwards) {
450 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 453 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
451 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 454 ASSERT_TRUE(AllModelsMatchVerifier());
452 455
453 ASSERT_TRUE(BookmarksHelper::AddURL( 456 ASSERT_TRUE(AddURL(
454 0, kGenericURLTitle, GURL(kGenericURL)) != NULL); 457 0, kGenericURLTitle, GURL(kGenericURL)) != NULL);
455 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 458 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
456 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 459 ASSERT_TRUE(AllModelsMatchVerifier());
457 460
458 BookmarksHelper::Remove(0, BookmarksHelper::GetBookmarkBarNode(0), 0); 461 Remove(0, GetBookmarkBarNode(0), 0);
459 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 462 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
460 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 463 ASSERT_TRUE(AllModelsMatchVerifier());
461 } 464 }
462 465
463 // Test Scribe ID - 371833. 466 // Test Scribe ID - 371833.
464 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 467 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
465 SC_DelBMNonEmptyAccountAfterwards) { 468 SC_DelBMNonEmptyAccountAfterwards) {
466 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 469 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
467 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 470 ASSERT_TRUE(AllModelsMatchVerifier());
468 471
469 for (int i = 0; i < 20; ++i) { 472 for (int i = 0; i < 20; ++i) {
470 std::wstring title = BookmarksHelper::IndexedURLTitle(i); 473 std::wstring title = IndexedURLTitle(i);
471 GURL url = GURL(BookmarksHelper::IndexedURL(i)); 474 GURL url = GURL(IndexedURL(i));
472 ASSERT_TRUE(BookmarksHelper::AddURL(0, i, title, url) != NULL); 475 ASSERT_TRUE(AddURL(0, i, title, url) != NULL);
473 } 476 }
474 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 477 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
475 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 478 ASSERT_TRUE(AllModelsMatchVerifier());
476 479
477 BookmarksHelper::Remove(0, BookmarksHelper::GetBookmarkBarNode(0), 0); 480 Remove(0, GetBookmarkBarNode(0), 0);
478 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 481 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
479 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 482 ASSERT_TRUE(AllModelsMatchVerifier());
480 } 483 }
481 484
482 // Test Scribe ID - 371835. 485 // Test Scribe ID - 371835.
483 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 486 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
484 SC_DelFirstBMUnderBMFoldNonEmptyFoldAfterwards) { 487 SC_DelFirstBMUnderBMFoldNonEmptyFoldAfterwards) {
485 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 488 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
486 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 489 ASSERT_TRUE(AllModelsMatchVerifier());
487 490
488 const BookmarkNode* folder = 491 const BookmarkNode* folder = AddFolder(0, kGenericFolderName);
489 BookmarksHelper::AddFolder(0, kGenericFolderName); 492 ASSERT_TRUE(folder != NULL);
490 ASSERT_TRUE(folder != NULL); 493 for (int i = 0; i < 10; ++i) {
491 for (int i = 0; i < 10; ++i) { 494 std::wstring title = IndexedURLTitle(i);
492 std::wstring title = BookmarksHelper::IndexedURLTitle(i); 495 GURL url = GURL(IndexedURL(i));
493 GURL url = GURL(BookmarksHelper::IndexedURL(i)); 496 ASSERT_TRUE(AddURL(0, folder, i, title, url) != NULL);
494 ASSERT_TRUE(BookmarksHelper::AddURL(0, folder, i, title, url) != NULL); 497 }
495 } 498 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
496 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 499 ASSERT_TRUE(AllModelsMatchVerifier());
497 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 500
498 501 Remove(0, folder, 0);
499 BookmarksHelper::Remove(0, folder, 0); 502 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
500 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 503 ASSERT_TRUE(AllModelsMatchVerifier());
501 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier());
502 } 504 }
503 505
504 // Test Scribe ID - 371836. 506 // Test Scribe ID - 371836.
505 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 507 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
506 SC_DelLastBMUnderBMFoldNonEmptyFoldAfterwards) { 508 SC_DelLastBMUnderBMFoldNonEmptyFoldAfterwards) {
507 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 509 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
508 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 510 ASSERT_TRUE(AllModelsMatchVerifier());
509 511
510 const BookmarkNode* folder = 512 const BookmarkNode* folder = AddFolder(0, kGenericFolderName);
511 BookmarksHelper::AddFolder(0, kGenericFolderName); 513 ASSERT_TRUE(folder != NULL);
512 ASSERT_TRUE(folder != NULL); 514 for (int i = 0; i < 10; ++i) {
513 for (int i = 0; i < 10; ++i) { 515 std::wstring title = IndexedURLTitle(i);
514 std::wstring title = BookmarksHelper::IndexedURLTitle(i); 516 GURL url = GURL(IndexedURL(i));
515 GURL url = GURL(BookmarksHelper::IndexedURL(i)); 517 ASSERT_TRUE(AddURL(0, folder, i, title, url) != NULL);
516 ASSERT_TRUE(BookmarksHelper::AddURL(0, folder, i, title, url) != NULL); 518 }
517 } 519 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
518 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 520 ASSERT_TRUE(AllModelsMatchVerifier());
519 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 521
520 522 Remove(0, folder, folder->child_count() - 1);
521 BookmarksHelper::Remove(0, folder, folder->child_count() - 1); 523 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
522 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 524 ASSERT_TRUE(AllModelsMatchVerifier());
523 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier());
524 } 525 }
525 526
526 // Test Scribe ID - 371856. 527 // Test Scribe ID - 371856.
527 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 528 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
528 SC_DelMiddleBMUnderBMFoldNonEmptyFoldAfterwards) { 529 SC_DelMiddleBMUnderBMFoldNonEmptyFoldAfterwards) {
529 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 530 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
530 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 531 ASSERT_TRUE(AllModelsMatchVerifier());
531 532
532 const BookmarkNode* folder = 533 const BookmarkNode* folder = AddFolder(0, kGenericFolderName);
533 BookmarksHelper::AddFolder(0, kGenericFolderName); 534 ASSERT_TRUE(folder != NULL);
534 ASSERT_TRUE(folder != NULL); 535 for (int i = 0; i < 10; ++i) {
535 for (int i = 0; i < 10; ++i) { 536 std::wstring title = IndexedURLTitle(i);
536 std::wstring title = BookmarksHelper::IndexedURLTitle(i); 537 GURL url = GURL(IndexedURL(i));
537 GURL url = GURL(BookmarksHelper::IndexedURL(i)); 538 ASSERT_TRUE(AddURL(0, folder, i, title, url) != NULL);
538 ASSERT_TRUE(BookmarksHelper::AddURL(0, folder, i, title, url) != NULL); 539 }
539 } 540 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
540 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 541 ASSERT_TRUE(AllModelsMatchVerifier());
541 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 542
542 543 Remove(0, folder, 4);
543 BookmarksHelper::Remove(0, folder, 4); 544 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
544 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 545 ASSERT_TRUE(AllModelsMatchVerifier());
545 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier());
546 } 546 }
547 547
548 // Test Scribe ID - 371857. 548 // Test Scribe ID - 371857.
549 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 549 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
550 SC_DelBMsUnderBMFoldEmptyFolderAfterwards) { 550 SC_DelBMsUnderBMFoldEmptyFolderAfterwards) {
551 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 551 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
552 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 552 ASSERT_TRUE(AllModelsMatchVerifier());
553 553
554 const BookmarkNode* folder = 554 const BookmarkNode* folder = AddFolder(0, kGenericFolderName);
555 BookmarksHelper::AddFolder(0, kGenericFolderName); 555 ASSERT_TRUE(folder != NULL);
556 ASSERT_TRUE(folder != NULL); 556 for (int i = 0; i < 10; ++i) {
557 for (int i = 0; i < 10; ++i) { 557 std::wstring title = IndexedURLTitle(i);
558 std::wstring title = BookmarksHelper::IndexedURLTitle(i); 558 GURL url = GURL(IndexedURL(i));
559 GURL url = GURL(BookmarksHelper::IndexedURL(i)); 559 ASSERT_TRUE(AddURL(0, folder, i, title, url) != NULL);
560 ASSERT_TRUE(BookmarksHelper::AddURL(0, folder, i, title, url) != NULL); 560 }
561 } 561 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
562 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 562 ASSERT_TRUE(AllModelsMatchVerifier());
563 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier());
564 563
565 int child_count = folder->child_count(); 564 int child_count = folder->child_count();
566 for (int i = 0; i < child_count; ++i) { 565 for (int i = 0; i < child_count; ++i) {
567 BookmarksHelper::Remove(0, folder, 0); 566 Remove(0, folder, 0);
568 } 567 }
569 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 568 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
570 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 569 ASSERT_TRUE(AllModelsMatchVerifier());
571 } 570 }
572 571
573 // Test Scribe ID - 371858. 572 // Test Scribe ID - 371858.
574 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 573 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
575 SC_DelEmptyBMFoldEmptyAccountAfterwards) { 574 SC_DelEmptyBMFoldEmptyAccountAfterwards) {
576 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 575 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
577 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 576 ASSERT_TRUE(AllModelsMatchVerifier());
578 577
579 ASSERT_TRUE(BookmarksHelper::AddFolder(0, kGenericFolderName) != NULL); 578 ASSERT_TRUE(AddFolder(0, kGenericFolderName) != NULL);
580 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 579 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
581 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 580 ASSERT_TRUE(AllModelsMatchVerifier());
582 581
583 BookmarksHelper::Remove(0, BookmarksHelper::GetBookmarkBarNode(0), 0); 582 Remove(0, GetBookmarkBarNode(0), 0);
584 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 583 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
585 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 584 ASSERT_TRUE(AllModelsMatchVerifier());
586 } 585 }
587 586
588 // Test Scribe ID - 371869. 587 // Test Scribe ID - 371869.
589 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 588 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
590 SC_DelEmptyBMFoldNonEmptyAccountAfterwards) { 589 SC_DelEmptyBMFoldNonEmptyAccountAfterwards) {
591 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 590 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
592 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 591 ASSERT_TRUE(AllModelsMatchVerifier());
593 592
594 ASSERT_TRUE(BookmarksHelper::AddFolder(0, kGenericFolderName) != NULL); 593 ASSERT_TRUE(AddFolder(0, kGenericFolderName) != NULL);
595 for (int i = 1; i < 15; ++i) { 594 for (int i = 1; i < 15; ++i) {
596 if (base::RandDouble() > 0.6) { 595 if (base::RandDouble() > 0.6) {
597 std::wstring title = BookmarksHelper::IndexedURLTitle(i); 596 std::wstring title = IndexedURLTitle(i);
598 GURL url = GURL(BookmarksHelper::IndexedURL(i)); 597 GURL url = GURL(IndexedURL(i));
599 ASSERT_TRUE(BookmarksHelper::AddURL(0, i, title, url) != NULL); 598 ASSERT_TRUE(AddURL(0, i, title, url) != NULL);
600 } else { 599 } else {
601 std::wstring title = BookmarksHelper::IndexedFolderName(i); 600 std::wstring title = IndexedFolderName(i);
602 ASSERT_TRUE(BookmarksHelper::AddFolder(0, i, title) != NULL); 601 ASSERT_TRUE(AddFolder(0, i, title) != NULL);
603 } 602 }
604 } 603 }
605 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 604 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
606 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 605 ASSERT_TRUE(AllModelsMatchVerifier());
607 606
608 BookmarksHelper::Remove(0, BookmarksHelper::GetBookmarkBarNode(0), 0); 607 Remove(0, GetBookmarkBarNode(0), 0);
609 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 608 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
610 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 609 ASSERT_TRUE(AllModelsMatchVerifier());
611 } 610 }
612 611
613 // Test Scribe ID - 371879. 612 // Test Scribe ID - 371879.
614 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 613 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
615 SC_DelBMFoldWithBMsNonEmptyAccountAfterwards) { 614 SC_DelBMFoldWithBMsNonEmptyAccountAfterwards) {
616 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 615 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
617 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 616 ASSERT_TRUE(AllModelsMatchVerifier());
618 617
619 ASSERT_TRUE(BookmarksHelper::AddURL( 618 ASSERT_TRUE(AddURL(0, kGenericURLTitle, GURL(kGenericURL)) != NULL);
620 0, kGenericURLTitle, GURL(kGenericURL)) != NULL); 619 const BookmarkNode* folder = AddFolder(0, 1, kGenericFolderName);
621 const BookmarkNode* folder =
622 BookmarksHelper::AddFolder(0, 1, kGenericFolderName);
623 ASSERT_TRUE(folder != NULL); 620 ASSERT_TRUE(folder != NULL);
624 for (int i = 2; i < 10; ++i) { 621 for (int i = 2; i < 10; ++i) {
625 if (base::RandDouble() > 0.6) { 622 if (base::RandDouble() > 0.6) {
626 std::wstring title = BookmarksHelper::IndexedURLTitle(i); 623 std::wstring title = IndexedURLTitle(i);
627 GURL url = GURL(BookmarksHelper::IndexedURL(i)); 624 GURL url = GURL(IndexedURL(i));
628 ASSERT_TRUE(BookmarksHelper::AddURL(0, i, title, url) != NULL); 625 ASSERT_TRUE(AddURL(0, i, title, url) != NULL);
629 } else { 626 } else {
630 std::wstring title = BookmarksHelper::IndexedFolderName(i); 627 std::wstring title = IndexedFolderName(i);
631 ASSERT_TRUE(BookmarksHelper::AddFolder(0, i, title) != NULL); 628 ASSERT_TRUE(AddFolder(0, i, title) != NULL);
632 } 629 }
633 } 630 }
634 for (int i = 0; i < 15; ++i) { 631 for (int i = 0; i < 15; ++i) {
635 std::wstring title = BookmarksHelper::IndexedURLTitle(i); 632 std::wstring title = IndexedURLTitle(i);
636 GURL url = GURL(BookmarksHelper::IndexedURL(i)); 633 GURL url = GURL(IndexedURL(i));
637 ASSERT_TRUE(BookmarksHelper::AddURL(0, folder, i, title, url) != NULL); 634 ASSERT_TRUE(AddURL(0, folder, i, title, url) != NULL);
638 } 635 }
639 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 636 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
640 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 637 ASSERT_TRUE(AllModelsMatchVerifier());
641 638
642 BookmarksHelper::Remove(0, BookmarksHelper::GetBookmarkBarNode(0), 1); 639 Remove(0, GetBookmarkBarNode(0), 1);
643 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 640 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
644 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 641 ASSERT_TRUE(AllModelsMatchVerifier());
645 } 642 }
646 643
647 // Test Scribe ID - 371880. 644 // Test Scribe ID - 371880.
648 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 645 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
649 SC_DelBMFoldWithBMsAndBMFoldsNonEmptyACAfterwards) { 646 SC_DelBMFoldWithBMsAndBMFoldsNonEmptyACAfterwards) {
650 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 647 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
651 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 648 ASSERT_TRUE(AllModelsMatchVerifier());
652 649
653 ASSERT_TRUE(BookmarksHelper::AddURL( 650 ASSERT_TRUE(AddURL(0, kGenericURLTitle, GURL(kGenericURL)) != NULL);
654 0, kGenericURLTitle, GURL(kGenericURL)) != NULL); 651 const BookmarkNode* folder = AddFolder(0, 1, kGenericFolderName);
655 const BookmarkNode* folder =
656 BookmarksHelper::AddFolder(0, 1, kGenericFolderName);
657 ASSERT_TRUE(folder != NULL); 652 ASSERT_TRUE(folder != NULL);
658 for (int i = 2; i < 10; ++i) { 653 for (int i = 2; i < 10; ++i) {
659 if (base::RandDouble() > 0.6) { 654 if (base::RandDouble() > 0.6) {
660 std::wstring title = BookmarksHelper::IndexedURLTitle(i); 655 std::wstring title = IndexedURLTitle(i);
661 GURL url = GURL(BookmarksHelper::IndexedURL(i)); 656 GURL url = GURL(IndexedURL(i));
662 ASSERT_TRUE(BookmarksHelper::AddURL(0, i, title, url) != NULL); 657 ASSERT_TRUE(AddURL(0, i, title, url) != NULL);
663 } else { 658 } else {
664 std::wstring title = BookmarksHelper::IndexedFolderName(i); 659 std::wstring title = IndexedFolderName(i);
665 ASSERT_TRUE(BookmarksHelper::AddFolder(0, i, title) != NULL); 660 ASSERT_TRUE(AddFolder(0, i, title) != NULL);
666 } 661 }
667 } 662 }
668 for (int i = 0; i < 10; ++i) { 663 for (int i = 0; i < 10; ++i) {
669 if (base::RandDouble() > 0.6) { 664 if (base::RandDouble() > 0.6) {
670 std::wstring title = BookmarksHelper::IndexedURLTitle(i); 665 std::wstring title = IndexedURLTitle(i);
671 GURL url = GURL(BookmarksHelper::IndexedURL(i)); 666 GURL url = GURL(IndexedURL(i));
672 ASSERT_TRUE(BookmarksHelper::AddURL(0, folder, i, title, url) != NULL); 667 ASSERT_TRUE(AddURL(0, folder, i, title, url) != NULL);
673 } else { 668 } else {
674 std::wstring title = BookmarksHelper::IndexedSubfolderName(i); 669 std::wstring title = IndexedSubfolderName(i);
675 const BookmarkNode* subfolder = 670 const BookmarkNode* subfolder =
676 BookmarksHelper::AddFolder(0, folder, i, title); 671 AddFolder(0, folder, i, title);
677 ASSERT_TRUE(subfolder != NULL); 672 ASSERT_TRUE(subfolder != NULL);
678 if (base::RandDouble() > 0.3) { 673 if (base::RandDouble() > 0.3) {
679 for (int j = 0; j < 10; ++j) { 674 for (int j = 0; j < 10; ++j) {
680 if (base::RandDouble() > 0.6) { 675 if (base::RandDouble() > 0.6) {
681 std::wstring title = BookmarksHelper::IndexedURLTitle(j); 676 std::wstring title = IndexedURLTitle(j);
682 GURL url = GURL(BookmarksHelper::IndexedURL(j)); 677 GURL url = GURL(IndexedURL(j));
683 ASSERT_TRUE(BookmarksHelper::AddURL( 678 ASSERT_TRUE(AddURL(
684 0, subfolder, j, title, url) != NULL); 679 0, subfolder, j, title, url) != NULL);
685 } else { 680 } else {
686 std::wstring title = BookmarksHelper::IndexedSubsubfolderName(j); 681 std::wstring title = IndexedSubsubfolderName(j);
687 ASSERT_TRUE(BookmarksHelper::AddFolder( 682 ASSERT_TRUE(AddFolder(
688 0, subfolder, j, title) != NULL); 683 0, subfolder, j, title) != NULL);
689 } 684 }
690 } 685 }
691 } 686 }
692 } 687 }
693 } 688 }
694 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 689 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
695 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 690 ASSERT_TRUE(AllModelsMatchVerifier());
696 691
697 BookmarksHelper::Remove(0, BookmarksHelper::GetBookmarkBarNode(0), 1); 692 Remove(0, GetBookmarkBarNode(0), 1);
698 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 693 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
699 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 694 ASSERT_TRUE(AllModelsMatchVerifier());
700 } 695 }
701 696
702 // Test Scribe ID - 371882. 697 // Test Scribe ID - 371882.
703 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 698 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
704 SC_DelBMFoldWithParentAndChildrenBMsAndBMFolds) { 699 SC_DelBMFoldWithParentAndChildrenBMsAndBMFolds) {
705 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 700 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
706 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 701 ASSERT_TRUE(AllModelsMatchVerifier());
707 702
708 const BookmarkNode* folder = 703 const BookmarkNode* folder = AddFolder(0, kGenericFolderName);
709 BookmarksHelper::AddFolder(0, kGenericFolderName);
710 ASSERT_TRUE(folder != NULL); 704 ASSERT_TRUE(folder != NULL);
711 for (int i = 1; i < 11; ++i) { 705 for (int i = 1; i < 11; ++i) {
712 std::wstring title = BookmarksHelper::IndexedURLTitle(i); 706 std::wstring title = IndexedURLTitle(i);
713 GURL url = GURL(BookmarksHelper::IndexedURL(i)); 707 GURL url = GURL(IndexedURL(i));
714 ASSERT_TRUE(BookmarksHelper::AddURL(0, i, title, url) != NULL); 708 ASSERT_TRUE(AddURL(0, i, title, url) != NULL);
715 } 709 }
716 const BookmarkNode* subfolder = 710 const BookmarkNode* subfolder =
717 BookmarksHelper::AddFolder(0, folder, 0, kGenericSubfolderName); 711 AddFolder(0, folder, 0, kGenericSubfolderName);
718 ASSERT_TRUE(subfolder != NULL); 712 ASSERT_TRUE(subfolder != NULL);
719 for (int i = 0; i < 30; ++i) { 713 for (int i = 0; i < 30; ++i) {
720 if (base::RandDouble() > 0.2) { 714 if (base::RandDouble() > 0.2) {
721 std::wstring title = BookmarksHelper::IndexedURLTitle(i); 715 std::wstring title = IndexedURLTitle(i);
722 GURL url = GURL(BookmarksHelper::IndexedURL(i)); 716 GURL url = GURL(IndexedURL(i));
723 ASSERT_TRUE(BookmarksHelper::AddURL(0, subfolder, i, title, url) != NULL); 717 ASSERT_TRUE(AddURL(0, subfolder, i, title, url) != NULL);
724 } else { 718 } else {
725 std::wstring title = BookmarksHelper::IndexedSubsubfolderName(i); 719 std::wstring title = IndexedSubsubfolderName(i);
726 ASSERT_TRUE(BookmarksHelper::AddFolder(0, subfolder, i, title) != NULL); 720 ASSERT_TRUE(AddFolder(0, subfolder, i, title) != NULL);
727 } 721 }
728 } 722 }
729 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 723 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
730 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 724 ASSERT_TRUE(AllModelsMatchVerifier());
731 725
732 BookmarksHelper::Remove(0, folder, 0); 726 Remove(0, folder, 0);
733 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 727 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
734 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 728 ASSERT_TRUE(AllModelsMatchVerifier());
735 } 729 }
736 730
737 // Test Scribe ID - 371931. 731 // Test Scribe ID - 371931.
738 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 732 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
739 SC_ReverseTheOrderOfTwoBMs) { 733 SC_ReverseTheOrderOfTwoBMs) {
740 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 734 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
741 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 735 ASSERT_TRUE(AllModelsMatchVerifier());
742 736
743 GURL url0 = GURL(BookmarksHelper::IndexedURL(0)); 737 GURL url0 = GURL(IndexedURL(0));
744 GURL url1 = GURL(BookmarksHelper::IndexedURL(1)); 738 GURL url1 = GURL(IndexedURL(1));
745 std::wstring title0 = BookmarksHelper::IndexedURLTitle(0); 739 std::wstring title0 = IndexedURLTitle(0);
746 std::wstring title1 = BookmarksHelper::IndexedURLTitle(1); 740 std::wstring title1 = IndexedURLTitle(1);
747 const BookmarkNode* bookmark0 = BookmarksHelper::AddURL(0, 0, title0, url0); 741 const BookmarkNode* bookmark0 = AddURL(0, 0, title0, url0);
748 const BookmarkNode* bookmark1 = BookmarksHelper::AddURL(0, 1, title1, url1); 742 const BookmarkNode* bookmark1 = AddURL(0, 1, title1, url1);
749 ASSERT_TRUE(bookmark0 != NULL); 743 ASSERT_TRUE(bookmark0 != NULL);
750 ASSERT_TRUE(bookmark1 != NULL); 744 ASSERT_TRUE(bookmark1 != NULL);
751 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 745 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
752 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 746 ASSERT_TRUE(AllModelsMatchVerifier());
753 747
754 BookmarksHelper::Move( 748 Move(0, bookmark0, GetBookmarkBarNode(0), 2);
755 0, bookmark0, BookmarksHelper::GetBookmarkBarNode(0), 2);
756 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 749 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
757 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 750 ASSERT_TRUE(AllModelsMatchVerifier());
758 } 751 }
759 752
760 // Test Scribe ID - 371933. 753 // Test Scribe ID - 371933.
761 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 754 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, SC_ReverseTheOrderOf10BMs) {
762 SC_ReverseTheOrderOf10BMs) {
763 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 755 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
764 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 756 ASSERT_TRUE(AllModelsMatchVerifier());
765 757
766 for (int i = 0; i < 10; ++i) { 758 for (int i = 0; i < 10; ++i) {
767 std::wstring title = BookmarksHelper::IndexedURLTitle(i); 759 std::wstring title = IndexedURLTitle(i);
768 GURL url = GURL(BookmarksHelper::IndexedURL(i)); 760 GURL url = GURL(IndexedURL(i));
769 ASSERT_TRUE(BookmarksHelper::AddURL(0, i, title, url) != NULL); 761 ASSERT_TRUE(AddURL(0, i, title, url) != NULL);
770 } 762 }
771 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 763 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
772 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 764 ASSERT_TRUE(AllModelsMatchVerifier());
773 765
774 BookmarksHelper::ReverseChildOrder(0, BookmarksHelper::GetBookmarkBarNode(0)); 766 ReverseChildOrder(0, GetBookmarkBarNode(0));
775 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 767 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
776 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 768 ASSERT_TRUE(AllModelsMatchVerifier());
777 } 769 }
778 770
779 // Test Scribe ID - 371954. 771 // Test Scribe ID - 371954.
780 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 772 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
781 SC_MovingBMsFromBMBarToBMFolder) { 773 SC_MovingBMsFromBMBarToBMFolder) {
782 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 774 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
783 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 775 ASSERT_TRUE(AllModelsMatchVerifier());
784 776
785 ASSERT_TRUE(BookmarksHelper::AddURL( 777 ASSERT_TRUE(AddURL(0, kGenericURLTitle, GURL(kGenericURL)) != NULL);
786 0, kGenericURLTitle, GURL(kGenericURL)) != NULL); 778 const BookmarkNode* folder = AddFolder(0, 1, kGenericFolderName);
787 const BookmarkNode* folder =
788 BookmarksHelper::AddFolder(0, 1, kGenericFolderName);
789 ASSERT_TRUE(folder != NULL); 779 ASSERT_TRUE(folder != NULL);
790 for (int i = 2; i < 10; ++i) { 780 for (int i = 2; i < 10; ++i) {
791 std::wstring title = BookmarksHelper::IndexedURLTitle(i); 781 std::wstring title = IndexedURLTitle(i);
792 GURL url = GURL(BookmarksHelper::IndexedURL(i)); 782 GURL url = GURL(IndexedURL(i));
793 ASSERT_TRUE(BookmarksHelper::AddURL(0, i, title, url) != NULL); 783 ASSERT_TRUE(AddURL(0, i, title, url) != NULL);
794 } 784 }
795 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 785 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
796 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 786 ASSERT_TRUE(AllModelsMatchVerifier());
797 787
798 int num_bookmarks_to_move = 788 int num_bookmarks_to_move =
799 BookmarksHelper::GetBookmarkBarNode(0)->child_count() - 2; 789 GetBookmarkBarNode(0)->child_count() - 2;
800 for (int i = 0; i < num_bookmarks_to_move; ++i) { 790 for (int i = 0; i < num_bookmarks_to_move; ++i) {
801 BookmarksHelper::Move( 791 Move(
802 0, BookmarksHelper::GetBookmarkBarNode(0)->GetChild(2), folder, i); 792 0, GetBookmarkBarNode(0)->GetChild(2), folder, i);
803 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 793 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
804 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 794 ASSERT_TRUE(AllModelsMatchVerifier());
805 } 795 }
806 } 796 }
807 797
808 // Test Scribe ID - 371957. 798 // Test Scribe ID - 371957.
809 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 799 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
810 SC_MovingBMsFromBMFoldToBMBar) { 800 SC_MovingBMsFromBMFoldToBMBar) {
811 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 801 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
812 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 802 ASSERT_TRUE(AllModelsMatchVerifier());
813 803
814 ASSERT_TRUE(BookmarksHelper::AddURL( 804 ASSERT_TRUE(AddURL(0, kGenericURLTitle, GURL(kGenericURL)) != NULL);
815 0, kGenericURLTitle, GURL(kGenericURL)) != NULL); 805 const BookmarkNode* folder = AddFolder(0, 1, kGenericFolderName);
816 const BookmarkNode* folder =
817 BookmarksHelper::AddFolder(0, 1, kGenericFolderName);
818 ASSERT_TRUE(folder != NULL); 806 ASSERT_TRUE(folder != NULL);
819 for (int i = 0; i < 10; ++i) { 807 for (int i = 0; i < 10; ++i) {
820 std::wstring title = BookmarksHelper::IndexedURLTitle(i); 808 std::wstring title = IndexedURLTitle(i);
821 GURL url = GURL(BookmarksHelper::IndexedURL(i)); 809 GURL url = GURL(IndexedURL(i));
822 ASSERT_TRUE(BookmarksHelper::AddURL(0, folder, i, title, url) != NULL); 810 ASSERT_TRUE(AddURL(0, folder, i, title, url) != NULL);
823 } 811 }
824 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 812 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
825 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 813 ASSERT_TRUE(AllModelsMatchVerifier());
826 814
827 int num_bookmarks_to_move = folder->child_count() - 2; 815 int num_bookmarks_to_move = folder->child_count() - 2;
828 for (int i = 0; i < num_bookmarks_to_move; ++i) { 816 for (int i = 0; i < num_bookmarks_to_move; ++i) {
829 BookmarksHelper::Move( 817 Move(0, folder->GetChild(0), GetBookmarkBarNode(0), i);
830 0, folder->GetChild(0), BookmarksHelper::GetBookmarkBarNode(0), i);
831 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 818 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
832 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 819 ASSERT_TRUE(AllModelsMatchVerifier());
833 } 820 }
834 } 821 }
835 822
836 // Test Scribe ID - 371961. 823 // Test Scribe ID - 371961.
837 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 824 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
838 SC_MovingBMsFromParentBMFoldToChildBMFold) { 825 SC_MovingBMsFromParentBMFoldToChildBMFold) {
839 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 826 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
840 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 827 ASSERT_TRUE(AllModelsMatchVerifier());
841 828
842 const BookmarkNode* folder = 829 const BookmarkNode* folder = AddFolder(0, kGenericFolderName);
843 BookmarksHelper::AddFolder(0, kGenericFolderName); 830 ASSERT_TRUE(folder != NULL);
844 ASSERT_TRUE(folder != NULL); 831 for (int i = 0; i < 3; ++i) {
845 for (int i = 0; i < 3; ++i) { 832 std::wstring title = IndexedURLTitle(i);
846 std::wstring title = BookmarksHelper::IndexedURLTitle(i); 833 GURL url = GURL(IndexedURL(i));
847 GURL url = GURL(BookmarksHelper::IndexedURL(i)); 834 ASSERT_TRUE(AddURL(0, folder, i, title, url) != NULL);
848 ASSERT_TRUE(BookmarksHelper::AddURL(0, folder, i, title, url) != NULL);
849 } 835 }
850 const BookmarkNode* subfolder = 836 const BookmarkNode* subfolder =
851 BookmarksHelper::AddFolder(0, folder, 3, kGenericSubfolderName); 837 AddFolder(0, folder, 3, kGenericSubfolderName);
852 ASSERT_TRUE(subfolder != NULL); 838 ASSERT_TRUE(subfolder != NULL);
853 for (int i = 0; i < 10; ++i) { 839 for (int i = 0; i < 10; ++i) {
854 std::wstring title = BookmarksHelper::IndexedURLTitle(i + 3); 840 std::wstring title = IndexedURLTitle(i + 3);
855 GURL url = GURL(BookmarksHelper::IndexedURL(i + 3)); 841 GURL url = GURL(IndexedURL(i + 3));
856 ASSERT_TRUE(BookmarksHelper::AddURL(0, subfolder, i, title, url) != NULL); 842 ASSERT_TRUE(AddURL(0, subfolder, i, title, url) != NULL);
857 } 843 }
858 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 844 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
859 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 845 ASSERT_TRUE(AllModelsMatchVerifier());
860 846
861 for (int i = 0; i < 3; ++i) { 847 for (int i = 0; i < 3; ++i) {
862 GURL url = GURL(BookmarksHelper::IndexedURL(i)); 848 GURL url = GURL(IndexedURL(i));
863 BookmarksHelper::Move( 849 Move(0, GetUniqueNodeByURL(0, url), subfolder, i + 10);
864 0, BookmarksHelper::GetUniqueNodeByURL(0, url), subfolder, i + 10); 850 }
865 } 851 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
866 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 852 ASSERT_TRUE(AllModelsMatchVerifier());
867 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier());
868 } 853 }
869 854
870 // Test Scribe ID - 371964. 855 // Test Scribe ID - 371964.
871 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 856 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
872 SC_MovingBMsFromChildBMFoldToParentBMFold) { 857 SC_MovingBMsFromChildBMFoldToParentBMFold) {
873 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 858 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
874 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 859 ASSERT_TRUE(AllModelsMatchVerifier());
875 860
876 const BookmarkNode* folder = 861 const BookmarkNode* folder = AddFolder(0, kGenericFolderName);
877 BookmarksHelper::AddFolder(0, kGenericFolderName); 862 ASSERT_TRUE(folder != NULL);
878 ASSERT_TRUE(folder != NULL); 863 for (int i = 0; i < 3; ++i) {
879 for (int i = 0; i < 3; ++i) { 864 std::wstring title = IndexedURLTitle(i);
880 std::wstring title = BookmarksHelper::IndexedURLTitle(i); 865 GURL url = GURL(IndexedURL(i));
881 GURL url = GURL(BookmarksHelper::IndexedURL(i)); 866 ASSERT_TRUE(AddURL(0, folder, i, title, url) != NULL);
882 ASSERT_TRUE(BookmarksHelper::AddURL(0, folder, i, title, url) != NULL);
883 } 867 }
884 const BookmarkNode* subfolder = 868 const BookmarkNode* subfolder =
885 BookmarksHelper::AddFolder(0, folder, 3, kGenericSubfolderName); 869 AddFolder(0, folder, 3, kGenericSubfolderName);
886 ASSERT_TRUE(subfolder != NULL); 870 ASSERT_TRUE(subfolder != NULL);
887 for (int i = 0; i < 5; ++i) { 871 for (int i = 0; i < 5; ++i) {
888 std::wstring title = BookmarksHelper::IndexedURLTitle(i + 3); 872 std::wstring title = IndexedURLTitle(i + 3);
889 GURL url = GURL(BookmarksHelper::IndexedURL(i + 3)); 873 GURL url = GURL(IndexedURL(i + 3));
890 ASSERT_TRUE(BookmarksHelper::AddURL(0, subfolder, i, title, url) != NULL); 874 ASSERT_TRUE(AddURL(0, subfolder, i, title, url) != NULL);
891 } 875 }
892 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 876 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
893 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 877 ASSERT_TRUE(AllModelsMatchVerifier());
894 878
895 for (int i = 0; i < 3; ++i) { 879 for (int i = 0; i < 3; ++i) {
896 GURL url = GURL(BookmarksHelper::IndexedURL(i + 3)); 880 GURL url = GURL(IndexedURL(i + 3));
897 BookmarksHelper::Move( 881 Move(0, GetUniqueNodeByURL(0, url), folder, i + 4);
898 0, BookmarksHelper::GetUniqueNodeByURL(0, url), folder, i + 4); 882 }
899 } 883 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
900 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 884 ASSERT_TRUE(AllModelsMatchVerifier());
901 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier());
902 } 885 }
903 886
904 // Test Scribe ID - 371967. 887 // Test Scribe ID - 371967.
905 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, SC_HoistBMs10LevelUp) { 888 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, SC_HoistBMs10LevelUp) {
906 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 889 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
907 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 890 ASSERT_TRUE(AllModelsMatchVerifier());
908 891
909 const BookmarkNode* folder = BookmarksHelper::GetBookmarkBarNode(0); 892 const BookmarkNode* folder = GetBookmarkBarNode(0);
910 const BookmarkNode* folder_L0 = NULL; 893 const BookmarkNode* folder_L0 = NULL;
911 const BookmarkNode* folder_L10 = NULL; 894 const BookmarkNode* folder_L10 = NULL;
912 for (int level = 0; level < 15; ++level) { 895 for (int level = 0; level < 15; ++level) {
913 int num_bookmarks = base::RandInt(0, 9); 896 int num_bookmarks = base::RandInt(0, 9);
914 for (int i = 0; i < num_bookmarks; ++i) { 897 for (int i = 0; i < num_bookmarks; ++i) {
915 std::wstring title = BookmarksHelper::IndexedURLTitle(i); 898 std::wstring title = IndexedURLTitle(i);
916 GURL url = GURL(BookmarksHelper::IndexedURL(i)); 899 GURL url = GURL(IndexedURL(i));
917 ASSERT_TRUE(BookmarksHelper::AddURL(0, folder, i, title, url) != NULL); 900 ASSERT_TRUE(AddURL(0, folder, i, title, url) != NULL);
918 } 901 }
919 std::wstring title = BookmarksHelper::IndexedFolderName(level); 902 std::wstring title = IndexedFolderName(level);
920 folder = BookmarksHelper::AddFolder( 903 folder = AddFolder(0, folder, folder->child_count(), title);
921 0, folder, folder->child_count(), title);
922 ASSERT_TRUE(folder != NULL); 904 ASSERT_TRUE(folder != NULL);
923 if (level == 0) folder_L0 = folder; 905 if (level == 0) folder_L0 = folder;
924 if (level == 10) folder_L10 = folder; 906 if (level == 10) folder_L10 = folder;
925 } 907 }
926 for (int i = 0; i < 3; ++i) { 908 for (int i = 0; i < 3; ++i) {
927 std::wstring title = BookmarksHelper::IndexedURLTitle(i + 10); 909 std::wstring title = IndexedURLTitle(i + 10);
928 GURL url = GURL(BookmarksHelper::IndexedURL(i + 10)); 910 GURL url = GURL(IndexedURL(i + 10));
929 ASSERT_TRUE(BookmarksHelper::AddURL(0, folder_L10, i, title, url) != NULL); 911 ASSERT_TRUE(AddURL(0, folder_L10, i, title, url) != NULL);
930 } 912 }
931 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 913 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
932 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 914 ASSERT_TRUE(AllModelsMatchVerifier());
933 915
934 GURL url10 = GURL(BookmarksHelper::IndexedURL(10)); 916 GURL url10 = GURL(IndexedURL(10));
935 BookmarksHelper::Move( 917 Move(0, GetUniqueNodeByURL(
936 0, BookmarksHelper::GetUniqueNodeByURL( 918 0, url10), folder_L0, folder_L0->child_count());
937 0, url10), folder_L0, folder_L0->child_count()); 919 GURL url11 = GURL(IndexedURL(11));
938 GURL url11 = GURL(BookmarksHelper::IndexedURL(11)); 920 Move(0, GetUniqueNodeByURL(0, url11), folder_L0, 0);
939 BookmarksHelper::Move( 921 GURL url12 = GURL(IndexedURL(12));
940 0, BookmarksHelper::GetUniqueNodeByURL(0, url11), folder_L0, 0); 922 Move(0, GetUniqueNodeByURL(0, url12), folder_L0, 1);
941 GURL url12 = GURL(BookmarksHelper::IndexedURL(12)); 923 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
942 BookmarksHelper::Move( 924 ASSERT_TRUE(AllModelsMatchVerifier());
943 0, BookmarksHelper::GetUniqueNodeByURL(0, url12), folder_L0, 1);
944 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
945 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier());
946 } 925 }
947 926
948 // Test Scribe ID - 371968. 927 // Test Scribe ID - 371968.
949 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, SC_SinkBMs10LevelDown) { 928 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, SC_SinkBMs10LevelDown) {
950 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 929 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
951 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 930 ASSERT_TRUE(AllModelsMatchVerifier());
952 931
953 const BookmarkNode* folder = BookmarksHelper::GetBookmarkBarNode(0); 932 const BookmarkNode* folder = GetBookmarkBarNode(0);
954 const BookmarkNode* folder_L0 = NULL; 933 const BookmarkNode* folder_L0 = NULL;
955 const BookmarkNode* folder_L10 = NULL; 934 const BookmarkNode* folder_L10 = NULL;
956 for (int level = 0; level < 15; ++level) { 935 for (int level = 0; level < 15; ++level) {
957 int num_bookmarks = base::RandInt(0, 9); 936 int num_bookmarks = base::RandInt(0, 9);
958 for (int i = 0; i < num_bookmarks; ++i) { 937 for (int i = 0; i < num_bookmarks; ++i) {
959 std::wstring title = BookmarksHelper::IndexedURLTitle(i); 938 std::wstring title = IndexedURLTitle(i);
960 GURL url = GURL(BookmarksHelper::IndexedURL(i)); 939 GURL url = GURL(IndexedURL(i));
961 ASSERT_TRUE(BookmarksHelper::AddURL(0, folder, i, title, url) != NULL); 940 ASSERT_TRUE(AddURL(0, folder, i, title, url) != NULL);
962 } 941 }
963 std::wstring title = BookmarksHelper::IndexedFolderName(level); 942 std::wstring title = IndexedFolderName(level);
964 folder = BookmarksHelper::AddFolder( 943 folder = AddFolder(0, folder, folder->child_count(), title);
965 0, folder, folder->child_count(), title);
966 ASSERT_TRUE(folder != NULL); 944 ASSERT_TRUE(folder != NULL);
967 if (level == 0) folder_L0 = folder; 945 if (level == 0) folder_L0 = folder;
968 if (level == 10) folder_L10 = folder; 946 if (level == 10) folder_L10 = folder;
969 } 947 }
970 for (int i = 0; i < 3; ++i) { 948 for (int i = 0; i < 3; ++i) {
971 std::wstring title = BookmarksHelper::IndexedURLTitle(i + 10); 949 std::wstring title = IndexedURLTitle(i + 10);
972 GURL url = GURL(BookmarksHelper::IndexedURL(i + 10)); 950 GURL url = GURL(IndexedURL(i + 10));
973 ASSERT_TRUE(BookmarksHelper::AddURL(0, folder_L0, 0, title, url) != NULL); 951 ASSERT_TRUE(AddURL(0, folder_L0, 0, title, url) != NULL);
974 } 952 }
975 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 953 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
976 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 954 ASSERT_TRUE(AllModelsMatchVerifier());
977 955
978 GURL url10 = GURL(BookmarksHelper::IndexedURL(10)); 956 GURL url10 = GURL(IndexedURL(10));
979 BookmarksHelper::Move( 957 Move(0, GetUniqueNodeByURL(0, url10), folder_L10, folder_L10->child_count());
980 0, 958 GURL url11 = GURL(IndexedURL(11));
981 BookmarksHelper::GetUniqueNodeByURL(0, url10), 959 Move(0, GetUniqueNodeByURL(0, url11), folder_L10, 0);
982 folder_L10, 960 GURL url12 = GURL(IndexedURL(12));
983 folder_L10->child_count()); 961 Move(0, GetUniqueNodeByURL(0, url12), folder_L10, 1);
984 GURL url11 = GURL(BookmarksHelper::IndexedURL(11)); 962 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
985 BookmarksHelper::Move( 963 ASSERT_TRUE(AllModelsMatchVerifier());
986 0, BookmarksHelper::GetUniqueNodeByURL(0, url11), folder_L10, 0);
987 GURL url12 = GURL(BookmarksHelper::IndexedURL(12));
988 BookmarksHelper::Move(
989 0, BookmarksHelper::GetUniqueNodeByURL(0, url12), folder_L10, 1);
990 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
991 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier());
992 } 964 }
993 965
994 // Test Scribe ID - 371980. 966 // Test Scribe ID - 371980.
995 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 967 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
996 SC_SinkEmptyBMFold5LevelsDown) { 968 SC_SinkEmptyBMFold5LevelsDown) {
997 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 969 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
998 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 970 ASSERT_TRUE(AllModelsMatchVerifier());
999 971
1000 const BookmarkNode* folder = BookmarksHelper::GetBookmarkBarNode(0); 972 const BookmarkNode* folder = GetBookmarkBarNode(0);
1001 const BookmarkNode* folder_L5 = NULL; 973 const BookmarkNode* folder_L5 = NULL;
1002 for (int level = 0; level < 15; ++level) { 974 for (int level = 0; level < 15; ++level) {
1003 int num_bookmarks = base::RandInt(0, 9); 975 int num_bookmarks = base::RandInt(0, 9);
1004 for (int i = 0; i < num_bookmarks; ++i) { 976 for (int i = 0; i < num_bookmarks; ++i) {
1005 std::wstring title = BookmarksHelper::IndexedURLTitle(i); 977 std::wstring title = IndexedURLTitle(i);
1006 GURL url = GURL(BookmarksHelper::IndexedURL(i)); 978 GURL url = GURL(IndexedURL(i));
1007 ASSERT_TRUE(BookmarksHelper::AddURL(0, folder, i, title, url) != NULL); 979 ASSERT_TRUE(AddURL(0, folder, i, title, url) != NULL);
1008 } 980 }
1009 std::wstring title = BookmarksHelper::IndexedFolderName(level); 981 std::wstring title = IndexedFolderName(level);
1010 folder = BookmarksHelper::AddFolder( 982 folder = AddFolder(
1011 0, folder, folder->child_count(), title); 983 0, folder, folder->child_count(), title);
1012 ASSERT_TRUE(folder != NULL); 984 ASSERT_TRUE(folder != NULL);
1013 if (level == 5) folder_L5 = folder; 985 if (level == 5) folder_L5 = folder;
1014 } 986 }
1015 folder = BookmarksHelper::AddFolder( 987 folder = AddFolder(
1016 0, 988 0, GetBookmarkBarNode(0)->child_count(), kGenericFolderName);
1017 BookmarksHelper::GetBookmarkBarNode(0)->child_count(), 989 ASSERT_TRUE(folder != NULL);
1018 kGenericFolderName); 990 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
1019 ASSERT_TRUE(folder != NULL); 991 ASSERT_TRUE(AllModelsMatchVerifier());
1020 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 992
1021 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 993 Move(0, folder, folder_L5, folder_L5->child_count());
1022 994 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
1023 BookmarksHelper::Move(0, folder, folder_L5, folder_L5->child_count()); 995 ASSERT_TRUE(AllModelsMatchVerifier());
1024 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
1025 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier());
1026 } 996 }
1027 997
1028 // Test Scribe ID - 371997. 998 // Test Scribe ID - 371997.
1029 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 999 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
1030 SC_SinkNonEmptyBMFold5LevelsDown) { 1000 SC_SinkNonEmptyBMFold5LevelsDown) {
1031 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 1001 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
1032 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 1002 ASSERT_TRUE(AllModelsMatchVerifier());
1033 1003
1034 const BookmarkNode* folder = BookmarksHelper::GetBookmarkBarNode(0); 1004 const BookmarkNode* folder = GetBookmarkBarNode(0);
1035 const BookmarkNode* folder_L5 = NULL; 1005 const BookmarkNode* folder_L5 = NULL;
1036 for (int level = 0; level < 6; ++level) { 1006 for (int level = 0; level < 6; ++level) {
1037 int num_bookmarks = base::RandInt(0, 9); 1007 int num_bookmarks = base::RandInt(0, 9);
1038 for (int i = 0; i < num_bookmarks; ++i) { 1008 for (int i = 0; i < num_bookmarks; ++i) {
1039 std::wstring title = BookmarksHelper::IndexedURLTitle(i); 1009 std::wstring title = IndexedURLTitle(i);
1040 GURL url = GURL(BookmarksHelper::IndexedURL(i)); 1010 GURL url = GURL(IndexedURL(i));
1041 ASSERT_TRUE(BookmarksHelper::AddURL(0, folder, i, title, url) != NULL); 1011 ASSERT_TRUE(AddURL(0, folder, i, title, url) != NULL);
1042 } 1012 }
1043 std::wstring title = BookmarksHelper::IndexedFolderName(level); 1013 std::wstring title = IndexedFolderName(level);
1044 folder = BookmarksHelper::AddFolder( 1014 folder = AddFolder(0, folder, folder->child_count(), title);
1045 0, folder, folder->child_count(), title);
1046 ASSERT_TRUE(folder != NULL); 1015 ASSERT_TRUE(folder != NULL);
1047 if (level == 5) folder_L5 = folder; 1016 if (level == 5) folder_L5 = folder;
1048 } 1017 }
1049 folder = BookmarksHelper::AddFolder( 1018 folder = AddFolder(
1050 0, 1019 0, GetBookmarkBarNode(0)->child_count(), kGenericFolderName);
1051 BookmarksHelper::GetBookmarkBarNode(0)->child_count(),
1052 kGenericFolderName);
1053 ASSERT_TRUE(folder != NULL); 1020 ASSERT_TRUE(folder != NULL);
1054 for (int i = 0; i < 10; ++i) { 1021 for (int i = 0; i < 10; ++i) {
1055 std::wstring title = BookmarksHelper::IndexedURLTitle(i); 1022 std::wstring title = IndexedURLTitle(i);
1056 GURL url = GURL(BookmarksHelper::IndexedURL(i)); 1023 GURL url = GURL(IndexedURL(i));
1057 ASSERT_TRUE(BookmarksHelper::AddURL(0, folder, i, title, url) != NULL); 1024 ASSERT_TRUE(AddURL(0, folder, i, title, url) != NULL);
1058 } 1025 }
1059 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 1026 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
1060 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 1027 ASSERT_TRUE(AllModelsMatchVerifier());
1061 1028
1062 BookmarksHelper::Move(0, folder, folder_L5, folder_L5->child_count()); 1029 Move(0, folder, folder_L5, folder_L5->child_count());
1063 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 1030 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
1064 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 1031 ASSERT_TRUE(AllModelsMatchVerifier());
1065 } 1032 }
1066 1033
1067 // Test Scribe ID - 372006. 1034 // Test Scribe ID - 372006.
1068 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 1035 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
1069 SC_HoistFolder5LevelsUp) { 1036 SC_HoistFolder5LevelsUp) {
1070 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 1037 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
1071 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 1038 ASSERT_TRUE(AllModelsMatchVerifier());
1072 1039
1073 const BookmarkNode* folder = BookmarksHelper::GetBookmarkBarNode(0); 1040 const BookmarkNode* folder = GetBookmarkBarNode(0);
1074 const BookmarkNode* folder_L5 = NULL; 1041 const BookmarkNode* folder_L5 = NULL;
1075 for (int level = 0; level < 6; ++level) { 1042 for (int level = 0; level < 6; ++level) {
1076 int num_bookmarks = base::RandInt(0, 9); 1043 int num_bookmarks = base::RandInt(0, 9);
1077 for (int i = 0; i < num_bookmarks; ++i) { 1044 for (int i = 0; i < num_bookmarks; ++i) {
1078 std::wstring title = BookmarksHelper::IndexedURLTitle(i); 1045 std::wstring title = IndexedURLTitle(i);
1079 GURL url = GURL(BookmarksHelper::IndexedURL(i)); 1046 GURL url = GURL(IndexedURL(i));
1080 ASSERT_TRUE(BookmarksHelper::AddURL(0, folder, i, title, url) != NULL); 1047 ASSERT_TRUE(AddURL(0, folder, i, title, url) != NULL);
1081 } 1048 }
1082 std::wstring title = BookmarksHelper::IndexedFolderName(level); 1049 std::wstring title = IndexedFolderName(level);
1083 folder = BookmarksHelper::AddFolder( 1050 folder = AddFolder(
1084 0, folder, folder->child_count(), title); 1051 0, folder, folder->child_count(), title);
1085 ASSERT_TRUE(folder != NULL); 1052 ASSERT_TRUE(folder != NULL);
1086 if (level == 5) folder_L5 = folder; 1053 if (level == 5) folder_L5 = folder;
1087 } 1054 }
1088 folder = BookmarksHelper::AddFolder( 1055 folder = AddFolder(
1089 0, folder_L5, folder_L5->child_count(), kGenericFolderName); 1056 0, folder_L5, folder_L5->child_count(), kGenericFolderName);
1090 ASSERT_TRUE(folder != NULL); 1057 ASSERT_TRUE(folder != NULL);
1091 for (int i = 0; i < 10; ++i) { 1058 for (int i = 0; i < 10; ++i) {
1092 std::wstring title = BookmarksHelper::IndexedURLTitle(i); 1059 std::wstring title = IndexedURLTitle(i);
1093 GURL url = GURL(BookmarksHelper::IndexedURL(i)); 1060 GURL url = GURL(IndexedURL(i));
1094 ASSERT_TRUE(BookmarksHelper::AddURL(0, folder, i, title, url) != NULL); 1061 ASSERT_TRUE(AddURL(0, folder, i, title, url) != NULL);
1095 } 1062 }
1096 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 1063 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
1097 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 1064 ASSERT_TRUE(AllModelsMatchVerifier());
1098 1065
1099 BookmarksHelper::Move(0, folder, BookmarksHelper::GetBookmarkBarNode(0), 1066 Move(0, folder, GetBookmarkBarNode(0), GetBookmarkBarNode(0)->child_count());
1100 BookmarksHelper::GetBookmarkBarNode(0)->child_count()); 1067 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
1101 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 1068 ASSERT_TRUE(AllModelsMatchVerifier());
1102 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier());
1103 } 1069 }
1104 1070
1105 // Test Scribe ID - 372026. 1071 // Test Scribe ID - 372026.
1106 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 1072 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
1107 SC_ReverseTheOrderOfTwoBMFolders) { 1073 SC_ReverseTheOrderOfTwoBMFolders) {
1108 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 1074 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
1109 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 1075 ASSERT_TRUE(AllModelsMatchVerifier());
1110 1076
1111 for (int i = 0; i < 2; ++i) { 1077 for (int i = 0; i < 2; ++i) {
1112 std::wstring title = BookmarksHelper::IndexedFolderName(i); 1078 std::wstring title = IndexedFolderName(i);
1113 const BookmarkNode* folder = BookmarksHelper::AddFolder(0, i, title); 1079 const BookmarkNode* folder = AddFolder(0, i, title);
1114 ASSERT_TRUE(folder != NULL); 1080 ASSERT_TRUE(folder != NULL);
1115 for (int j = 0; j < 10; ++j) { 1081 for (int j = 0; j < 10; ++j) {
1116 std::wstring title = BookmarksHelper::IndexedURLTitle(j); 1082 std::wstring title = IndexedURLTitle(j);
1117 GURL url = GURL(BookmarksHelper::IndexedURL(j)); 1083 GURL url = GURL(IndexedURL(j));
1118 ASSERT_TRUE(BookmarksHelper::AddURL(0, folder, j, title, url) != NULL); 1084 ASSERT_TRUE(AddURL(0, folder, j, title, url) != NULL);
1119 } 1085 }
1120 } 1086 }
1121 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 1087 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
1122 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 1088 ASSERT_TRUE(AllModelsMatchVerifier());
1123 1089
1124 BookmarksHelper::ReverseChildOrder(0, BookmarksHelper::GetBookmarkBarNode(0)); 1090 ReverseChildOrder(0, GetBookmarkBarNode(0));
1125 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 1091 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
1126 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 1092 ASSERT_TRUE(AllModelsMatchVerifier());
1127 } 1093 }
1128 1094
1129 // Test Scribe ID - 372028. 1095 // Test Scribe ID - 372028.
1130 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 1096 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
1131 SC_ReverseTheOrderOfTenBMFolders) { 1097 SC_ReverseTheOrderOfTenBMFolders) {
1132 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 1098 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
1133 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 1099 ASSERT_TRUE(AllModelsMatchVerifier());
1134 1100
1135 for (int i = 0; i < 10; ++i) { 1101 for (int i = 0; i < 10; ++i) {
1136 std::wstring title = BookmarksHelper::IndexedFolderName(i); 1102 std::wstring title = IndexedFolderName(i);
1137 const BookmarkNode* folder = BookmarksHelper::AddFolder(0, i, title); 1103 const BookmarkNode* folder = AddFolder(0, i, title);
1138 ASSERT_TRUE(folder != NULL); 1104 ASSERT_TRUE(folder != NULL);
1139 for (int j = 0; j < 10; ++j) { 1105 for (int j = 0; j < 10; ++j) {
1140 std::wstring title = BookmarksHelper::IndexedURLTitle(1000 * i + j); 1106 std::wstring title = IndexedURLTitle(1000 * i + j);
1141 GURL url = GURL(BookmarksHelper::IndexedURL(j)); 1107 GURL url = GURL(IndexedURL(j));
1142 ASSERT_TRUE(BookmarksHelper::AddURL(0, folder, j, title, url) != NULL); 1108 ASSERT_TRUE(AddURL(0, folder, j, title, url) != NULL);
1143 } 1109 }
1144 } 1110 }
1145 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 1111 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
1146 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 1112 ASSERT_TRUE(AllModelsMatchVerifier());
1147 1113
1148 BookmarksHelper::ReverseChildOrder(0, BookmarksHelper::GetBookmarkBarNode(0)); 1114 ReverseChildOrder(0, GetBookmarkBarNode(0));
1149 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 1115 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
1150 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 1116 ASSERT_TRUE(AllModelsMatchVerifier());
1151 } 1117 }
1152 1118
1153 // Test Scribe ID - 373379. 1119 // Test Scribe ID - 373379.
1154 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 1120 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
1155 MC_BiDirectionalPushAddingBM) { 1121 MC_BiDirectionalPushAddingBM) {
1156 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 1122 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
1157 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 1123 ASSERT_TRUE(AllModelsMatchVerifier());
1158 1124
1159 DisableVerifier(); 1125 DisableVerifier();
1160 for (int i = 0; i < 2; ++i) { 1126 for (int i = 0; i < 2; ++i) {
1161 std::wstring title0 = BookmarksHelper::IndexedURLTitle(2*i); 1127 std::wstring title0 = IndexedURLTitle(2*i);
1162 GURL url0 = GURL(BookmarksHelper::IndexedURL(2*i)); 1128 GURL url0 = GURL(IndexedURL(2*i));
1163 ASSERT_TRUE(BookmarksHelper::AddURL(0, title0, url0) != NULL); 1129 ASSERT_TRUE(AddURL(0, title0, url0) != NULL);
1164 std::wstring title1 = BookmarksHelper::IndexedURLTitle(2*i+1); 1130 std::wstring title1 = IndexedURLTitle(2*i+1);
1165 GURL url1 = GURL(BookmarksHelper::IndexedURL(2*i+1)); 1131 GURL url1 = GURL(IndexedURL(2*i+1));
1166 ASSERT_TRUE(BookmarksHelper::AddURL(1, title1, url1) != NULL); 1132 ASSERT_TRUE(AddURL(1, title1, url1) != NULL);
1167 } 1133 }
1168 ASSERT_TRUE(AwaitQuiescence()); 1134 ASSERT_TRUE(AwaitQuiescence());
1169 ASSERT_TRUE(BookmarksHelper::AllModelsMatch()); 1135 ASSERT_TRUE(AllModelsMatch());
1170 ASSERT_FALSE(BookmarksHelper::ContainsDuplicateBookmarks(0)); 1136 ASSERT_FALSE(ContainsDuplicateBookmarks(0));
1171 } 1137 }
1172 1138
1173 // Test Scribe ID - 373503. 1139 // Test Scribe ID - 373503.
1174 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 1140 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
1175 MC_BiDirectionalPush_AddingSameBMs) { 1141 MC_BiDirectionalPush_AddingSameBMs) {
1176 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 1142 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
1177 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 1143 ASSERT_TRUE(AllModelsMatchVerifier());
1178 1144
1179 // Note: When a racy commit is done with identical bookmarks, it is possible 1145 // Note: When a racy commit is done with identical bookmarks, it is possible
1180 // for duplicates to exist after sync completes. See http://crbug.com/19769. 1146 // for duplicates to exist after sync completes. See http://crbug.com/19769.
1181 DisableVerifier(); 1147 DisableVerifier();
1182 for (int i = 0; i < 2; ++i) { 1148 for (int i = 0; i < 2; ++i) {
1183 std::wstring title = BookmarksHelper::IndexedURLTitle(i); 1149 std::wstring title = IndexedURLTitle(i);
1184 GURL url = GURL(BookmarksHelper::IndexedURL(i)); 1150 GURL url = GURL(IndexedURL(i));
1185 ASSERT_TRUE(BookmarksHelper::AddURL(0, title, url) != NULL); 1151 ASSERT_TRUE(AddURL(0, title, url) != NULL);
1186 ASSERT_TRUE(BookmarksHelper::AddURL(1, title, url) != NULL); 1152 ASSERT_TRUE(AddURL(1, title, url) != NULL);
1187 } 1153 }
1188 ASSERT_TRUE(AwaitQuiescence()); 1154 ASSERT_TRUE(AwaitQuiescence());
1189 ASSERT_TRUE(BookmarksHelper::AllModelsMatch()); 1155 ASSERT_TRUE(AllModelsMatch());
1190 } 1156 }
1191 1157
1192 // Test Scribe ID - 373506. 1158 // Test Scribe ID - 373506.
1193 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 1159 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
1194 MC_BootStrapEmptyStateEverywhere) { 1160 MC_BootStrapEmptyStateEverywhere) {
1195 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 1161 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
1196 ASSERT_TRUE(AwaitQuiescence()); 1162 ASSERT_TRUE(AwaitQuiescence());
1197 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 1163 ASSERT_TRUE(AllModelsMatchVerifier());
1198 } 1164 }
1199 1165
1200 // Test Scribe ID - 373505. 1166 // Test Scribe ID - 373505.
1201 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 1167 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
1202 MC_Merge_CaseInsensitivity_InNames) { 1168 MC_Merge_CaseInsensitivity_InNames) {
1203 ASSERT_TRUE(SetupClients()) << "SetupClients() failed."; 1169 ASSERT_TRUE(SetupClients()) << "SetupClients() failed.";
1204 DisableVerifier(); 1170 DisableVerifier();
1205 1171
1206 const BookmarkNode* folder0 = BookmarksHelper::AddFolder(0, L"Folder"); 1172 const BookmarkNode* folder0 = AddFolder(0, L"Folder");
1207 ASSERT_TRUE(folder0 != NULL); 1173 ASSERT_TRUE(folder0 != NULL);
1208 ASSERT_TRUE(BookmarksHelper::AddURL( 1174 ASSERT_TRUE(AddURL(0, folder0, 0, L"Bookmark 0", GURL(kGenericURL)) != NULL);
1209 0, folder0, 0, L"Bookmark 0", GURL(kGenericURL)) != NULL); 1175 ASSERT_TRUE(AddURL(0, folder0, 1, L"Bookmark 1", GURL(kGenericURL)) != NULL);
1210 ASSERT_TRUE(BookmarksHelper::AddURL( 1176 ASSERT_TRUE(AddURL(0, folder0, 2, L"Bookmark 2", GURL(kGenericURL)) != NULL);
1211 0, folder0, 1, L"Bookmark 1", GURL(kGenericURL)) != NULL);
1212 ASSERT_TRUE(BookmarksHelper::AddURL(
1213 0, folder0, 2, L"Bookmark 2", GURL(kGenericURL)) != NULL);
1214 1177
1215 const BookmarkNode* folder1 = BookmarksHelper::AddFolder(1, L"fOlDeR"); 1178 const BookmarkNode* folder1 = AddFolder(1, L"fOlDeR");
1216 ASSERT_TRUE(folder1 != NULL); 1179 ASSERT_TRUE(folder1 != NULL);
1217 ASSERT_TRUE(BookmarksHelper::AddURL( 1180 ASSERT_TRUE(AddURL(1, folder1, 0, L"bOoKmArK 0", GURL(kGenericURL)) != NULL);
1218 1, folder1, 0, L"bOoKmArK 0", GURL(kGenericURL)) != NULL); 1181 ASSERT_TRUE(AddURL(1, folder1, 1, L"BooKMarK 1", GURL(kGenericURL)) != NULL);
1219 ASSERT_TRUE(BookmarksHelper::AddURL( 1182 ASSERT_TRUE(AddURL(1, folder1, 2, L"bOOKMARK 2", GURL(kGenericURL)) != NULL);
1220 1, folder1, 1, L"BooKMarK 1", GURL(kGenericURL)) != NULL);
1221 ASSERT_TRUE(BookmarksHelper::AddURL(
1222 1, folder1, 2, L"bOOKMARK 2", GURL(kGenericURL)) != NULL);
1223 1183
1224 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 1184 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
1225 ASSERT_TRUE(AwaitQuiescence()); 1185 ASSERT_TRUE(AwaitQuiescence());
1226 ASSERT_TRUE(BookmarksHelper::AllModelsMatch()); 1186 ASSERT_TRUE(AllModelsMatch());
1227 ASSERT_FALSE(BookmarksHelper::ContainsDuplicateBookmarks(0)); 1187 ASSERT_FALSE(ContainsDuplicateBookmarks(0));
1228 } 1188 }
1229 1189
1230 // Test Scribe ID - 373508. 1190 // Test Scribe ID - 373508.
1231 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 1191 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
1232 MC_SimpleMergeOfDifferentBMModels) { 1192 MC_SimpleMergeOfDifferentBMModels) {
1233 ASSERT_TRUE(SetupClients()) << "SetupClients() failed."; 1193 ASSERT_TRUE(SetupClients()) << "SetupClients() failed.";
1234 DisableVerifier(); 1194 DisableVerifier();
1235 1195
1236 for (int i = 0; i < 3; ++i) { 1196 for (int i = 0; i < 3; ++i) {
1237 std::wstring title = BookmarksHelper::IndexedURLTitle(i); 1197 std::wstring title = IndexedURLTitle(i);
1238 GURL url = GURL(BookmarksHelper::IndexedURL(i)); 1198 GURL url = GURL(IndexedURL(i));
1239 ASSERT_TRUE(BookmarksHelper::AddURL(0, i, title, url) != NULL); 1199 ASSERT_TRUE(AddURL(0, i, title, url) != NULL);
1240 ASSERT_TRUE(BookmarksHelper::AddURL(1, i, title, url) != NULL); 1200 ASSERT_TRUE(AddURL(1, i, title, url) != NULL);
1241 } 1201 }
1242 1202
1243 for (int i = 3; i < 10; ++i) { 1203 for (int i = 3; i < 10; ++i) {
1244 std::wstring title0 = BookmarksHelper::IndexedURLTitle(i); 1204 std::wstring title0 = IndexedURLTitle(i);
1245 GURL url0 = GURL(BookmarksHelper::IndexedURL(i)); 1205 GURL url0 = GURL(IndexedURL(i));
1246 ASSERT_TRUE(BookmarksHelper::AddURL(0, i, title0, url0) != NULL); 1206 ASSERT_TRUE(AddURL(0, i, title0, url0) != NULL);
1247 std::wstring title1 = BookmarksHelper::IndexedURLTitle(i+7); 1207 std::wstring title1 = IndexedURLTitle(i+7);
1248 GURL url1 = GURL(BookmarksHelper::IndexedURL(i+7)); 1208 GURL url1 = GURL(IndexedURL(i+7));
1249 ASSERT_TRUE(BookmarksHelper::AddURL(1, i, title1, url1) != NULL); 1209 ASSERT_TRUE(AddURL(1, i, title1, url1) != NULL);
1250 } 1210 }
1251 1211
1252 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 1212 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
1253 ASSERT_TRUE(AwaitQuiescence()); 1213 ASSERT_TRUE(AwaitQuiescence());
1254 ASSERT_TRUE(BookmarksHelper::AllModelsMatch()); 1214 ASSERT_TRUE(AllModelsMatch());
1255 ASSERT_FALSE(BookmarksHelper::ContainsDuplicateBookmarks(0)); 1215 ASSERT_FALSE(ContainsDuplicateBookmarks(0));
1256 } 1216 }
1257 1217
1258 // Test Scribe ID - 386586. 1218 // Test Scribe ID - 386586.
1259 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 1219 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
1260 MC_MergeSimpleBMHierarchyUnderBMBar) { 1220 MC_MergeSimpleBMHierarchyUnderBMBar) {
1261 ASSERT_TRUE(SetupClients()) << "SetupClients() failed."; 1221 ASSERT_TRUE(SetupClients()) << "SetupClients() failed.";
1262 DisableVerifier(); 1222 DisableVerifier();
1263 1223
1264 for (int i = 0; i < 3; ++i) { 1224 for (int i = 0; i < 3; ++i) {
1265 std::wstring title = BookmarksHelper::IndexedURLTitle(i); 1225 std::wstring title = IndexedURLTitle(i);
1266 GURL url = GURL(BookmarksHelper::IndexedURL(i)); 1226 GURL url = GURL(IndexedURL(i));
1267 ASSERT_TRUE(BookmarksHelper::AddURL(0, i, title, url) != NULL); 1227 ASSERT_TRUE(AddURL(0, i, title, url) != NULL);
1268 ASSERT_TRUE(BookmarksHelper::AddURL(1, i, title, url) != NULL); 1228 ASSERT_TRUE(AddURL(1, i, title, url) != NULL);
1269 } 1229 }
1270 1230
1271 for (int i = 3; i < 10; ++i) { 1231 for (int i = 3; i < 10; ++i) {
1272 std::wstring title = BookmarksHelper::IndexedURLTitle(i); 1232 std::wstring title = IndexedURLTitle(i);
1273 GURL url = GURL(BookmarksHelper::IndexedURL(i)); 1233 GURL url = GURL(IndexedURL(i));
1274 ASSERT_TRUE(BookmarksHelper::AddURL(1, i, title, url) != NULL); 1234 ASSERT_TRUE(AddURL(1, i, title, url) != NULL);
1275 } 1235 }
1276 1236
1277 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 1237 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
1278 ASSERT_TRUE(AwaitQuiescence()); 1238 ASSERT_TRUE(AwaitQuiescence());
1279 ASSERT_TRUE(BookmarksHelper::AllModelsMatch()); 1239 ASSERT_TRUE(AllModelsMatch());
1280 ASSERT_FALSE(BookmarksHelper::ContainsDuplicateBookmarks(0)); 1240 ASSERT_FALSE(ContainsDuplicateBookmarks(0));
1281 } 1241 }
1282 1242
1283 // Test Scribe ID - 386589. 1243 // Test Scribe ID - 386589.
1284 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 1244 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
1285 MC_MergeSimpleBMHierarchyEqualSetsUnderBMBar) { 1245 MC_MergeSimpleBMHierarchyEqualSetsUnderBMBar) {
1286 ASSERT_TRUE(SetupClients()) << "SetupClients() failed."; 1246 ASSERT_TRUE(SetupClients()) << "SetupClients() failed.";
1287 DisableVerifier(); 1247 DisableVerifier();
1288 1248
1289 for (int i = 0; i < 3; ++i) { 1249 for (int i = 0; i < 3; ++i) {
1290 std::wstring title = BookmarksHelper::IndexedURLTitle(i); 1250 std::wstring title = IndexedURLTitle(i);
1291 GURL url = GURL(BookmarksHelper::IndexedURL(i)); 1251 GURL url = GURL(IndexedURL(i));
1292 ASSERT_TRUE(BookmarksHelper::AddURL(0, i, title, url) != NULL); 1252 ASSERT_TRUE(AddURL(0, i, title, url) != NULL);
1293 ASSERT_TRUE(BookmarksHelper::AddURL(1, i, title, url) != NULL); 1253 ASSERT_TRUE(AddURL(1, i, title, url) != NULL);
1294 } 1254 }
1295 1255
1296 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 1256 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
1297 ASSERT_TRUE(AwaitQuiescence()); 1257 ASSERT_TRUE(AwaitQuiescence());
1298 ASSERT_TRUE(BookmarksHelper::AllModelsMatch()); 1258 ASSERT_TRUE(AllModelsMatch());
1299 ASSERT_FALSE(BookmarksHelper::ContainsDuplicateBookmarks(0)); 1259 ASSERT_FALSE(ContainsDuplicateBookmarks(0));
1300 } 1260 }
1301 1261
1302 // Test Scribe ID - 373504 - Merge bookmark folders with different bookmarks. 1262 // Test Scribe ID - 373504 - Merge bookmark folders with different bookmarks.
1303 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 1263 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
1304 MC_MergeBMFoldersWithDifferentBMs) { 1264 MC_MergeBMFoldersWithDifferentBMs) {
1305 ASSERT_TRUE(SetupClients()) << "SetupClients() failed."; 1265 ASSERT_TRUE(SetupClients()) << "SetupClients() failed.";
1306 DisableVerifier(); 1266 DisableVerifier();
1307 1267
1308 const BookmarkNode* folder0 = 1268 const BookmarkNode* folder0 = AddFolder(0, kGenericFolderName);
1309 BookmarksHelper::AddFolder(0, kGenericFolderName);
1310 ASSERT_TRUE(folder0 != NULL); 1269 ASSERT_TRUE(folder0 != NULL);
1311 const BookmarkNode* folder1 = 1270 const BookmarkNode* folder1 = AddFolder(1, kGenericFolderName);
1312 BookmarksHelper::AddFolder(1, kGenericFolderName);
1313 ASSERT_TRUE(folder1 != NULL); 1271 ASSERT_TRUE(folder1 != NULL);
1314 for (int i = 0; i < 2; ++i) { 1272 for (int i = 0; i < 2; ++i) {
1315 std::wstring title0 = BookmarksHelper::IndexedURLTitle(2*i); 1273 std::wstring title0 = IndexedURLTitle(2*i);
1316 GURL url0 = GURL(BookmarksHelper::IndexedURL(2*i)); 1274 GURL url0 = GURL(IndexedURL(2*i));
1317 ASSERT_TRUE(BookmarksHelper::AddURL(0, folder0, i, title0, url0) != NULL); 1275 ASSERT_TRUE(AddURL(0, folder0, i, title0, url0) != NULL);
1318 std::wstring title1 = BookmarksHelper::IndexedURLTitle(2*i+1); 1276 std::wstring title1 = IndexedURLTitle(2*i+1);
1319 GURL url1 = GURL(BookmarksHelper::IndexedURL(2*i+1)); 1277 GURL url1 = GURL(IndexedURL(2*i+1));
1320 ASSERT_TRUE(BookmarksHelper::AddURL(1, folder1, i, title1, url1) != NULL); 1278 ASSERT_TRUE(AddURL(1, folder1, i, title1, url1) != NULL);
1321 } 1279 }
1322 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 1280 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
1323 ASSERT_TRUE(AwaitQuiescence()); 1281 ASSERT_TRUE(AwaitQuiescence());
1324 ASSERT_TRUE(BookmarksHelper::AllModelsMatch()); 1282 ASSERT_TRUE(AllModelsMatch());
1325 ASSERT_FALSE(BookmarksHelper::ContainsDuplicateBookmarks(0)); 1283 ASSERT_FALSE(ContainsDuplicateBookmarks(0));
1326 } 1284 }
1327 1285
1328 // Test Scribe ID - 373509 - Merge moderately complex bookmark models. 1286 // Test Scribe ID - 373509 - Merge moderately complex bookmark models.
1329 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 1287 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
1330 MC_MergeDifferentBMModelsModeratelyComplex) { 1288 MC_MergeDifferentBMModelsModeratelyComplex) {
1331 ASSERT_TRUE(SetupClients()) << "SetupClients() failed."; 1289 ASSERT_TRUE(SetupClients()) << "SetupClients() failed.";
1332 DisableVerifier(); 1290 DisableVerifier();
1333 1291
1334 for (int i = 0; i < 25; ++i) { 1292 for (int i = 0; i < 25; ++i) {
1335 std::wstring title0 = BookmarksHelper::IndexedURLTitle(i); 1293 std::wstring title0 = IndexedURLTitle(i);
1336 GURL url0 = GURL(BookmarksHelper::IndexedURL(i)); 1294 GURL url0 = GURL(IndexedURL(i));
1337 ASSERT_TRUE(BookmarksHelper::AddURL(0, i, title0, url0) != NULL); 1295 ASSERT_TRUE(AddURL(0, i, title0, url0) != NULL);
1338 std::wstring title1 = BookmarksHelper::IndexedURLTitle(i+50); 1296 std::wstring title1 = IndexedURLTitle(i+50);
1339 GURL url1 = GURL(BookmarksHelper::IndexedURL(i+50)); 1297 GURL url1 = GURL(IndexedURL(i+50));
1340 ASSERT_TRUE(BookmarksHelper::AddURL(1, i, title1, url1) != NULL); 1298 ASSERT_TRUE(AddURL(1, i, title1, url1) != NULL);
1341 } 1299 }
1342 for (int i = 25; i < 30; ++i) { 1300 for (int i = 25; i < 30; ++i) {
1343 std::wstring title0 = BookmarksHelper::IndexedFolderName(i); 1301 std::wstring title0 = IndexedFolderName(i);
1344 const BookmarkNode* folder0 = BookmarksHelper::AddFolder(0, i, title0); 1302 const BookmarkNode* folder0 = AddFolder(0, i, title0);
1345 ASSERT_TRUE(folder0 != NULL); 1303 ASSERT_TRUE(folder0 != NULL);
1346 std::wstring title1 = BookmarksHelper::IndexedFolderName(i+50); 1304 std::wstring title1 = IndexedFolderName(i+50);
1347 const BookmarkNode* folder1 = BookmarksHelper::AddFolder(1, i, title1); 1305 const BookmarkNode* folder1 = AddFolder(1, i, title1);
1348 ASSERT_TRUE(folder1 != NULL); 1306 ASSERT_TRUE(folder1 != NULL);
1349 for (int j = 0; j < 5; ++j) { 1307 for (int j = 0; j < 5; ++j) {
1350 std::wstring title0 = BookmarksHelper::IndexedURLTitle(i+5*j); 1308 std::wstring title0 = IndexedURLTitle(i+5*j);
1351 GURL url0 = GURL(BookmarksHelper::IndexedURL(i+5*j)); 1309 GURL url0 = GURL(IndexedURL(i+5*j));
1352 ASSERT_TRUE(BookmarksHelper::AddURL(0, folder0, j, title0, url0) != NULL); 1310 ASSERT_TRUE(AddURL(0, folder0, j, title0, url0) != NULL);
1353 std::wstring title1 = BookmarksHelper::IndexedURLTitle(i+5*j+50); 1311 std::wstring title1 = IndexedURLTitle(i+5*j+50);
1354 GURL url1 = GURL(BookmarksHelper::IndexedURL(i+5*j+50)); 1312 GURL url1 = GURL(IndexedURL(i+5*j+50));
1355 ASSERT_TRUE(BookmarksHelper::AddURL(1, folder1, j, title1, url1) != NULL); 1313 ASSERT_TRUE(AddURL(1, folder1, j, title1, url1) != NULL);
1356 } 1314 }
1357 } 1315 }
1358 for (int i = 100; i < 125; ++i) { 1316 for (int i = 100; i < 125; ++i) {
1359 std::wstring title = BookmarksHelper::IndexedURLTitle(i); 1317 std::wstring title = IndexedURLTitle(i);
1360 GURL url = GURL(BookmarksHelper::IndexedURL(i)); 1318 GURL url = GURL(IndexedURL(i));
1361 ASSERT_TRUE(BookmarksHelper::AddURL(0, title, url) != NULL); 1319 ASSERT_TRUE(AddURL(0, title, url) != NULL);
1362 ASSERT_TRUE(BookmarksHelper::AddURL(1, title, url) != NULL); 1320 ASSERT_TRUE(AddURL(1, title, url) != NULL);
1363 } 1321 }
1364 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 1322 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
1365 ASSERT_TRUE(AwaitQuiescence()); 1323 ASSERT_TRUE(AwaitQuiescence());
1366 ASSERT_TRUE(BookmarksHelper::AllModelsMatch()); 1324 ASSERT_TRUE(AllModelsMatch());
1367 ASSERT_FALSE(BookmarksHelper::ContainsDuplicateBookmarks(0)); 1325 ASSERT_FALSE(ContainsDuplicateBookmarks(0));
1368 } 1326 }
1369 1327
1370 // TCM ID - 3675271 - Merge simple bookmark subset under bookmark folder. 1328 // TCM ID - 3675271 - Merge simple bookmark subset under bookmark folder.
1371 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 1329 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
1372 MC_MergeSimpleBMHierarchySubsetUnderBMFolder) { 1330 MC_MergeSimpleBMHierarchySubsetUnderBMFolder) {
1373 ASSERT_TRUE(SetupClients()) << "SetupClients() failed."; 1331 ASSERT_TRUE(SetupClients()) << "SetupClients() failed.";
1374 DisableVerifier(); 1332 DisableVerifier();
1375 1333
1376 for (int i = 0; i < 2; ++i) { 1334 for (int i = 0; i < 2; ++i) {
1377 const BookmarkNode* folder = 1335 const BookmarkNode* folder = AddFolder(i, kGenericFolderName);
1378 BookmarksHelper::AddFolder(i, kGenericFolderName);
1379 ASSERT_TRUE(folder != NULL); 1336 ASSERT_TRUE(folder != NULL);
1380 for (int j = 0; j < 4; ++j) { 1337 for (int j = 0; j < 4; ++j) {
1381 if (base::RandDouble() < 0.5) { 1338 if (base::RandDouble() < 0.5) {
1382 std::wstring title = BookmarksHelper::IndexedURLTitle(j); 1339 std::wstring title = IndexedURLTitle(j);
1383 GURL url = GURL(BookmarksHelper::IndexedURL(j)); 1340 GURL url = GURL(IndexedURL(j));
1384 ASSERT_TRUE(BookmarksHelper::AddURL(i, folder, j, title, url) != NULL); 1341 ASSERT_TRUE(AddURL(i, folder, j, title, url) != NULL);
1385 } else { 1342 } else {
1386 std::wstring title = BookmarksHelper::IndexedFolderName(j); 1343 std::wstring title = IndexedFolderName(j);
1387 ASSERT_TRUE(BookmarksHelper::AddFolder(i, folder, j, title) != NULL); 1344 ASSERT_TRUE(AddFolder(i, folder, j, title) != NULL);
1388 } 1345 }
1389 } 1346 }
1390 } 1347 }
1391 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 1348 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
1392 ASSERT_TRUE(AwaitQuiescence()); 1349 ASSERT_TRUE(AwaitQuiescence());
1393 ASSERT_TRUE(BookmarksHelper::AllModelsMatch()); 1350 ASSERT_TRUE(AllModelsMatch());
1394 ASSERT_FALSE(BookmarksHelper::ContainsDuplicateBookmarks(0)); 1351 ASSERT_FALSE(ContainsDuplicateBookmarks(0));
1395 } 1352 }
1396 1353
1397 // TCM ID - 3727284 - Merge subsets of bookmark under bookmark bar. 1354 // TCM ID - 3727284 - Merge subsets of bookmark under bookmark bar.
1398 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 1355 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
1399 MC_MergeSimpleBMHierarchySubsetUnderBookmarkBar) { 1356 MC_MergeSimpleBMHierarchySubsetUnderBookmarkBar) {
1400 ASSERT_TRUE(SetupClients()) << "SetupClients() failed."; 1357 ASSERT_TRUE(SetupClients()) << "SetupClients() failed.";
1401 DisableVerifier(); 1358 DisableVerifier();
1402 1359
1403 for (int i = 0; i < 4; ++i) { 1360 for (int i = 0; i < 4; ++i) {
1404 std::wstring title = BookmarksHelper::IndexedURLTitle(i); 1361 std::wstring title = IndexedURLTitle(i);
1405 GURL url = GURL(BookmarksHelper::IndexedURL(i)); 1362 GURL url = GURL(IndexedURL(i));
1406 ASSERT_TRUE(BookmarksHelper::AddURL(0, i, title, url) != NULL); 1363 ASSERT_TRUE(AddURL(0, i, title, url) != NULL);
1407 } 1364 }
1408 1365
1409 for (int j = 0; j < 2; ++j) { 1366 for (int j = 0; j < 2; ++j) {
1410 std::wstring title = BookmarksHelper::IndexedURLTitle(j); 1367 std::wstring title = IndexedURLTitle(j);
1411 GURL url = GURL(BookmarksHelper::IndexedURL(j)); 1368 GURL url = GURL(IndexedURL(j));
1412 ASSERT_TRUE(BookmarksHelper::AddURL(1, j, title, url) != NULL); 1369 ASSERT_TRUE(AddURL(1, j, title, url) != NULL);
1413 } 1370 }
1414 1371
1415 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 1372 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
1416 ASSERT_TRUE(AwaitQuiescence()); 1373 ASSERT_TRUE(AwaitQuiescence());
1417 ASSERT_TRUE(BookmarksHelper::AllModelsMatch()); 1374 ASSERT_TRUE(AllModelsMatch());
1418 ASSERT_FALSE(BookmarksHelper::ContainsDuplicateBookmarks(0)); 1375 ASSERT_FALSE(ContainsDuplicateBookmarks(0));
1419 ASSERT_FALSE(BookmarksHelper::ContainsDuplicateBookmarks(1)); 1376 ASSERT_FALSE(ContainsDuplicateBookmarks(1));
1420 } 1377 }
1421 1378
1422 // TCM ID - 3659294 - Merge simple bookmark hierarchy under bookmark folder. 1379 // TCM ID - 3659294 - Merge simple bookmark hierarchy under bookmark folder.
1423 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 1380 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
1424 MC_Merge_SimpleBMHierarchy_Under_BMFolder) { 1381 MC_Merge_SimpleBMHierarchy_Under_BMFolder) {
1425 ASSERT_TRUE(SetupClients()) << "SetupClients() failed."; 1382 ASSERT_TRUE(SetupClients()) << "SetupClients() failed.";
1426 DisableVerifier(); 1383 DisableVerifier();
1427 1384
1428 const BookmarkNode* folder0 = 1385 const BookmarkNode* folder0 = AddFolder(0, 0, kGenericFolderName);
1429 BookmarksHelper::AddFolder(0, 0, kGenericFolderName);
1430 ASSERT_TRUE(folder0 != NULL); 1386 ASSERT_TRUE(folder0 != NULL);
1431 ASSERT_TRUE(BookmarksHelper::AddURL( 1387 ASSERT_TRUE(AddURL(
1432 0, folder0, 0, BookmarksHelper::IndexedURLTitle(1), 1388 0, folder0, 0, IndexedURLTitle(1), GURL(IndexedURL(1))) != NULL);
1433 GURL(BookmarksHelper::IndexedURL(1))) != NULL); 1389 ASSERT_TRUE(AddFolder(0, folder0, 1, IndexedSubfolderName(2)) != NULL);
1434 ASSERT_TRUE(BookmarksHelper::AddFolder( 1390 ASSERT_TRUE(AddURL(
1435 0, folder0, 1, BookmarksHelper::IndexedSubfolderName(2)) != NULL); 1391 0, folder0, 2, IndexedURLTitle(3), GURL(IndexedURL(3))) != NULL);
1436 ASSERT_TRUE(BookmarksHelper::AddURL( 1392 ASSERT_TRUE(AddFolder(0, folder0, 3, IndexedSubfolderName(4)) != NULL);
1437 0, folder0, 2, BookmarksHelper::IndexedURLTitle(3),
1438 GURL(BookmarksHelper::IndexedURL(3))) != NULL);
1439 ASSERT_TRUE(BookmarksHelper::AddFolder(
1440 0, folder0, 3, BookmarksHelper::IndexedSubfolderName(4)) != NULL);
1441 1393
1442 const BookmarkNode* folder1 = 1394 const BookmarkNode* folder1 = AddFolder(1, 0, kGenericFolderName);
1443 BookmarksHelper::AddFolder(1, 0, kGenericFolderName);
1444 ASSERT_TRUE(folder1 != NULL); 1395 ASSERT_TRUE(folder1 != NULL);
1445 ASSERT_TRUE(BookmarksHelper::AddFolder( 1396 ASSERT_TRUE(AddFolder(1, folder1, 0, IndexedSubfolderName(0)) != NULL);
1446 1, folder1, 0, BookmarksHelper::IndexedSubfolderName(0)) != NULL); 1397 ASSERT_TRUE(AddFolder(1, folder1, 1, IndexedSubfolderName(2)) != NULL);
1447 ASSERT_TRUE(BookmarksHelper::AddFolder( 1398 ASSERT_TRUE(AddURL(
1448 1, folder1, 1, BookmarksHelper::IndexedSubfolderName(2)) != NULL); 1399 1, folder1, 2, IndexedURLTitle(3), GURL(IndexedURL(3))) != NULL);
1449 ASSERT_TRUE(BookmarksHelper::AddURL( 1400 ASSERT_TRUE(AddFolder(1, folder1, 3, IndexedSubfolderName(5)) != NULL);
1450 1, folder1, 2, BookmarksHelper::IndexedURLTitle(3), 1401 ASSERT_TRUE(AddURL(
1451 GURL(BookmarksHelper::IndexedURL(3))) != NULL); 1402 1, folder1, 4, IndexedURLTitle(1), GURL(IndexedURL(1))) != NULL);
1452 ASSERT_TRUE(BookmarksHelper::AddFolder(
1453 1, folder1, 3, BookmarksHelper::IndexedSubfolderName(5)) != NULL);
1454 ASSERT_TRUE(BookmarksHelper::AddURL(
1455 1, folder1, 4, BookmarksHelper::IndexedURLTitle(1),
1456 GURL(BookmarksHelper::IndexedURL(1))) != NULL);
1457 1403
1458 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 1404 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
1459 ASSERT_TRUE(AwaitQuiescence()); 1405 ASSERT_TRUE(AwaitQuiescence());
1460 ASSERT_TRUE(BookmarksHelper::AllModelsMatch()); 1406 ASSERT_TRUE(AllModelsMatch());
1461 ASSERT_FALSE(BookmarksHelper::ContainsDuplicateBookmarks(0)); 1407 ASSERT_FALSE(ContainsDuplicateBookmarks(0));
1462 } 1408 }
1463 1409
1464 // TCM ID - 3711273 - Merge disjoint sets of bookmark hierarchy under bookmark 1410 // TCM ID - 3711273 - Merge disjoint sets of bookmark hierarchy under bookmark
1465 // folder. 1411 // folder.
1466 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 1412 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
1467 MC_Merge_SimpleBMHierarchy_DisjointSets_Under_BMFolder) { 1413 MC_Merge_SimpleBMHierarchy_DisjointSets_Under_BMFolder) {
1468 ASSERT_TRUE(SetupClients()) << "SetupClients() failed."; 1414 ASSERT_TRUE(SetupClients()) << "SetupClients() failed.";
1469 DisableVerifier(); 1415 DisableVerifier();
1470 1416
1471 const BookmarkNode* folder0 = 1417 const BookmarkNode* folder0 =
1472 BookmarksHelper::AddFolder(0, 0, kGenericFolderName); 1418 AddFolder(0, 0, kGenericFolderName);
1473 ASSERT_TRUE(folder0 != NULL); 1419 ASSERT_TRUE(folder0 != NULL);
1474 ASSERT_TRUE(BookmarksHelper::AddURL( 1420 ASSERT_TRUE(AddURL(
1475 0, folder0, 0, BookmarksHelper::IndexedURLTitle(1), 1421 0, folder0, 0, IndexedURLTitle(1), GURL(IndexedURL(1))) != NULL);
1476 GURL(BookmarksHelper::IndexedURL(1))) != NULL); 1422 ASSERT_TRUE(AddFolder(0, folder0, 1, IndexedSubfolderName(2)) != NULL);
1477 ASSERT_TRUE(BookmarksHelper::AddFolder( 1423 ASSERT_TRUE(AddURL(
1478 0, folder0, 1, BookmarksHelper::IndexedSubfolderName(2)) != NULL); 1424 0, folder0, 2, IndexedURLTitle(3), GURL(IndexedURL(3))) != NULL);
1479 ASSERT_TRUE(BookmarksHelper::AddURL( 1425 ASSERT_TRUE(AddFolder(0, folder0, 3, IndexedSubfolderName(4)) != NULL);
1480 0, folder0, 2, BookmarksHelper::IndexedURLTitle(3),
1481 GURL(BookmarksHelper::IndexedURL(3))) != NULL);
1482 ASSERT_TRUE(BookmarksHelper::AddFolder(
1483 0, folder0, 3, BookmarksHelper::IndexedSubfolderName(4)) != NULL);
1484 1426
1485 const BookmarkNode* folder1 = 1427 const BookmarkNode* folder1 = AddFolder(1, 0, kGenericFolderName);
1486 BookmarksHelper::AddFolder(1, 0, kGenericFolderName);
1487 ASSERT_TRUE(folder1 != NULL); 1428 ASSERT_TRUE(folder1 != NULL);
1488 ASSERT_TRUE(BookmarksHelper::AddFolder( 1429 ASSERT_TRUE(AddFolder(1, folder1, 0, IndexedSubfolderName(5)) != NULL);
1489 1, folder1, 0, BookmarksHelper::IndexedSubfolderName(5)) != NULL); 1430 ASSERT_TRUE(AddFolder(1, folder1, 1, IndexedSubfolderName(6)) != NULL);
1490 ASSERT_TRUE(BookmarksHelper::AddFolder( 1431 ASSERT_TRUE(AddURL(
1491 1, folder1, 1, BookmarksHelper::IndexedSubfolderName(6)) != NULL); 1432 1, folder1, 2, IndexedURLTitle(7), GURL(IndexedURL(7))) != NULL);
1492 ASSERT_TRUE(BookmarksHelper::AddURL( 1433 ASSERT_TRUE(AddURL(
1493 1, folder1, 2, BookmarksHelper::IndexedURLTitle(7), 1434 1, folder1, 3, IndexedURLTitle(8), GURL(IndexedURL(8))) != NULL);
1494 GURL(BookmarksHelper::IndexedURL(7))) != NULL);
1495 ASSERT_TRUE(BookmarksHelper::AddURL(
1496 1, folder1, 3, BookmarksHelper::IndexedURLTitle(8),
1497 GURL(BookmarksHelper::IndexedURL(8))) != NULL);
1498 1435
1499 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 1436 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
1500 ASSERT_TRUE(AwaitQuiescence()); 1437 ASSERT_TRUE(AwaitQuiescence());
1501 ASSERT_TRUE(BookmarksHelper::AllModelsMatch()); 1438 ASSERT_TRUE(AllModelsMatch());
1502 ASSERT_FALSE(BookmarksHelper::ContainsDuplicateBookmarks(0)); 1439 ASSERT_FALSE(ContainsDuplicateBookmarks(0));
1503 } 1440 }
1504 1441
1505 // TCM ID - 3639296 - Merge disjoint sets of bookmark hierarchy under bookmark 1442 // TCM ID - 3639296 - Merge disjoint sets of bookmark hierarchy under bookmark
1506 // bar. 1443 // bar.
1507 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 1444 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
1508 MC_Merge_SimpleBMHierarchy_DisjointSets_Under_BookmarkBar) { 1445 MC_Merge_SimpleBMHierarchy_DisjointSets_Under_BookmarkBar) {
1509 ASSERT_TRUE(SetupClients()) << "SetupClients() failed."; 1446 ASSERT_TRUE(SetupClients()) << "SetupClients() failed.";
1510 DisableVerifier(); 1447 DisableVerifier();
1511 1448
1512 for (int i = 0; i < 3; ++i) { 1449 for (int i = 0; i < 3; ++i) {
1513 std::wstring title = BookmarksHelper::IndexedURLTitle(i+1); 1450 std::wstring title = IndexedURLTitle(i+1);
1514 GURL url = GURL(BookmarksHelper::IndexedURL(i+1)); 1451 GURL url = GURL(IndexedURL(i+1));
1515 ASSERT_TRUE(BookmarksHelper::AddURL(0, i, title, url) != NULL); 1452 ASSERT_TRUE(AddURL(0, i, title, url) != NULL);
1516 } 1453 }
1517 1454
1518 for (int j = 0; j < 3; ++j) { 1455 for (int j = 0; j < 3; ++j) {
1519 std::wstring title = BookmarksHelper::IndexedURLTitle(j+4); 1456 std::wstring title = IndexedURLTitle(j+4);
1520 GURL url = GURL(BookmarksHelper::IndexedURL(j+4)); 1457 GURL url = GURL(IndexedURL(j+4));
1521 ASSERT_TRUE(BookmarksHelper::AddURL(0, j, title, url) != NULL); 1458 ASSERT_TRUE(AddURL(0, j, title, url) != NULL);
1522 } 1459 }
1523 1460
1524 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 1461 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
1525 ASSERT_TRUE(AwaitQuiescence()); 1462 ASSERT_TRUE(AwaitQuiescence());
1526 ASSERT_TRUE(BookmarksHelper::AllModelsMatch()); 1463 ASSERT_TRUE(AllModelsMatch());
1527 ASSERT_FALSE(BookmarksHelper::ContainsDuplicateBookmarks(0)); 1464 ASSERT_FALSE(ContainsDuplicateBookmarks(0));
1528 } 1465 }
1529 1466
1530 // TCM ID - 3616282 - Merge sets of duplicate bookmarks under bookmark bar. 1467 // TCM ID - 3616282 - Merge sets of duplicate bookmarks under bookmark bar.
1531 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 1468 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
1532 MC_Merge_SimpleBMHierarchy_DuplicateBMs_Under_BMBar) { 1469 MC_Merge_SimpleBMHierarchy_DuplicateBMs_Under_BMBar) {
1533 ASSERT_TRUE(SetupClients()) << "SetupClients() failed."; 1470 ASSERT_TRUE(SetupClients()) << "SetupClients() failed.";
1534 DisableVerifier(); 1471 DisableVerifier();
1535 1472
1536 // Let's add duplicate set of bookmark {1,2,2,3,3,3,4,4,4,4} to client0. 1473 // Let's add duplicate set of bookmark {1,2,2,3,3,3,4,4,4,4} to client0.
1537 int node_index = 0; 1474 int node_index = 0;
1538 for (int i = 1; i < 5 ; ++i) { 1475 for (int i = 1; i < 5 ; ++i) {
1539 for (int j = 0; j < i; ++j) { 1476 for (int j = 0; j < i; ++j) {
1540 std::wstring title = BookmarksHelper::IndexedURLTitle(i); 1477 std::wstring title = IndexedURLTitle(i);
1541 GURL url = GURL(BookmarksHelper::IndexedURL(i)); 1478 GURL url = GURL(IndexedURL(i));
1542 ASSERT_TRUE(BookmarksHelper::AddURL(0, node_index, title, url) != NULL); 1479 ASSERT_TRUE(AddURL(0, node_index, title, url) != NULL);
1543 ++node_index; 1480 ++node_index;
1544 } 1481 }
1545 } 1482 }
1546 // Let's add a set of bookmarks {1,2,3,4} to client1. 1483 // Let's add a set of bookmarks {1,2,3,4} to client1.
1547 for (int i = 0; i < 4; ++i) { 1484 for (int i = 0; i < 4; ++i) {
1548 std::wstring title = BookmarksHelper::IndexedURLTitle(i+1); 1485 std::wstring title = IndexedURLTitle(i+1);
1549 GURL url = GURL(BookmarksHelper::IndexedURL(i+1)); 1486 GURL url = GURL(IndexedURL(i+1));
1550 ASSERT_TRUE(BookmarksHelper::AddURL(1, i, title, url) != NULL); 1487 ASSERT_TRUE(AddURL(1, i, title, url) != NULL);
1551 } 1488 }
1552 1489
1553 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 1490 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
1554 ASSERT_TRUE(AwaitQuiescence()); 1491 ASSERT_TRUE(AwaitQuiescence());
1555 ASSERT_TRUE(BookmarksHelper::AllModelsMatch()); 1492 ASSERT_TRUE(AllModelsMatch());
1556 1493
1557 for (int i = 1; i < 5 ; ++i) { 1494 for (int i = 1; i < 5 ; ++i) {
1558 ASSERT_TRUE(BookmarksHelper::CountBookmarksWithTitlesMatching( 1495 ASSERT_TRUE(CountBookmarksWithTitlesMatching(1, IndexedURLTitle(i)) == i);
1559 1, BookmarksHelper::IndexedURLTitle(i)) == i);
1560 } 1496 }
1561 } 1497 }
1562 1498
1563 // TCM ID - 6593872. 1499 // TCM ID - 6593872.
1564 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, DisableBookmarks) { 1500 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, DisableBookmarks) {
1565 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 1501 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
1566 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 1502 ASSERT_TRUE(AllModelsMatchVerifier());
1567 1503
1568 ASSERT_TRUE(GetClient(1)->DisableSyncForDatatype(syncable::BOOKMARKS)); 1504 ASSERT_TRUE(GetClient(1)->DisableSyncForDatatype(syncable::BOOKMARKS));
1569 ASSERT_TRUE(BookmarksHelper::AddFolder(1, kGenericFolderName) != NULL); 1505 ASSERT_TRUE(AddFolder(1, kGenericFolderName) != NULL);
1570 ASSERT_TRUE(AwaitQuiescence()); 1506 ASSERT_TRUE(AwaitQuiescence());
1571 ASSERT_FALSE(BookmarksHelper::AllModelsMatch()); 1507 ASSERT_FALSE(AllModelsMatch());
1572 1508
1573 ASSERT_TRUE(GetClient(1)->EnableSyncForDatatype(syncable::BOOKMARKS)); 1509 ASSERT_TRUE(GetClient(1)->EnableSyncForDatatype(syncable::BOOKMARKS));
1574 ASSERT_TRUE(AwaitQuiescence()); 1510 ASSERT_TRUE(AwaitQuiescence());
1575 ASSERT_TRUE(BookmarksHelper::AllModelsMatch()); 1511 ASSERT_TRUE(AllModelsMatch());
1576 } 1512 }
1577 1513
1578 // TCM ID - 7343544. 1514 // TCM ID - 7343544.
1579 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, DisableSync) { 1515 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, DisableSync) {
1580 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 1516 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
1581 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 1517 ASSERT_TRUE(AllModelsMatchVerifier());
1582 1518
1583 ASSERT_TRUE(GetClient(1)->DisableSyncForAllDatatypes()); 1519 ASSERT_TRUE(GetClient(1)->DisableSyncForAllDatatypes());
1584 ASSERT_TRUE(BookmarksHelper::AddFolder( 1520 ASSERT_TRUE(AddFolder(0, IndexedFolderName(0)) != NULL);
1585 0, BookmarksHelper::IndexedFolderName(0)) != NULL);
1586 ASSERT_TRUE(GetClient(0)->AwaitSyncCycleCompletion("Added a folder.")); 1521 ASSERT_TRUE(GetClient(0)->AwaitSyncCycleCompletion("Added a folder."));
1587 ASSERT_FALSE(BookmarksHelper::AllModelsMatch()); 1522 ASSERT_FALSE(AllModelsMatch());
1588 1523
1589 ASSERT_TRUE(BookmarksHelper::AddFolder( 1524 ASSERT_TRUE(AddFolder(1, IndexedFolderName(1)) != NULL);
1590 1, BookmarksHelper::IndexedFolderName(1)) != NULL); 1525 ASSERT_FALSE(AllModelsMatch());
1591 ASSERT_FALSE(BookmarksHelper::AllModelsMatch());
1592 1526
1593 ASSERT_TRUE(GetClient(1)->EnableSyncForAllDatatypes()); 1527 ASSERT_TRUE(GetClient(1)->EnableSyncForAllDatatypes());
1594 ASSERT_TRUE(AwaitQuiescence()); 1528 ASSERT_TRUE(AwaitQuiescence());
1595 ASSERT_TRUE(BookmarksHelper::AllModelsMatch()); 1529 ASSERT_TRUE(AllModelsMatch());
1596 } 1530 }
1597 1531
1598 // TCM ID - 3662298 - Test adding duplicate folder - Both with different BMs 1532 // TCM ID - 3662298 - Test adding duplicate folder - Both with different BMs
1599 // underneath. 1533 // underneath.
1600 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, MC_DuplicateFolders) { 1534 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, MC_DuplicateFolders) {
1601 ASSERT_TRUE(SetupClients()) << "SetupClients() failed."; 1535 ASSERT_TRUE(SetupClients()) << "SetupClients() failed.";
1602 DisableVerifier(); 1536 DisableVerifier();
1603 1537
1604 const BookmarkNode* folder0 = 1538 const BookmarkNode* folder0 = AddFolder(0, kGenericFolderName);
1605 BookmarksHelper::AddFolder(0, kGenericFolderName);
1606 ASSERT_TRUE(folder0 != NULL); 1539 ASSERT_TRUE(folder0 != NULL);
1607 const BookmarkNode* folder1 = 1540 const BookmarkNode* folder1 = AddFolder(1, kGenericFolderName);
1608 BookmarksHelper::AddFolder(1, kGenericFolderName);
1609 ASSERT_TRUE(folder1 != NULL); 1541 ASSERT_TRUE(folder1 != NULL);
1610 for (int i = 0; i < 5; ++i) { 1542 for (int i = 0; i < 5; ++i) {
1611 std::wstring title0 = BookmarksHelper::IndexedURLTitle(i); 1543 std::wstring title0 = IndexedURLTitle(i);
1612 GURL url0 = GURL(BookmarksHelper::IndexedURL(i)); 1544 GURL url0 = GURL(IndexedURL(i));
1613 ASSERT_TRUE(BookmarksHelper::AddURL(0, folder0, i, title0, url0) != NULL); 1545 ASSERT_TRUE(AddURL(0, folder0, i, title0, url0) != NULL);
1614 std::wstring title1 = BookmarksHelper::IndexedURLTitle(i+5); 1546 std::wstring title1 = IndexedURLTitle(i+5);
1615 GURL url1 = GURL(BookmarksHelper::IndexedURL(i+5)); 1547 GURL url1 = GURL(IndexedURL(i+5));
1616 ASSERT_TRUE(BookmarksHelper::AddURL(1, folder1, i, title1, url1) != NULL); 1548 ASSERT_TRUE(AddURL(1, folder1, i, title1, url1) != NULL);
1617 } 1549 }
1618 1550
1619 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 1551 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
1620 ASSERT_TRUE(AwaitQuiescence()); 1552 ASSERT_TRUE(AwaitQuiescence());
1621 ASSERT_TRUE(BookmarksHelper::AllModelsMatch()); 1553 ASSERT_TRUE(AllModelsMatch());
1622 ASSERT_FALSE(BookmarksHelper::ContainsDuplicateBookmarks(0)); 1554 ASSERT_FALSE(ContainsDuplicateBookmarks(0));
1623 } 1555 }
1624 1556
1625 // TCM ID - 3719307 - Test a scenario of updating the name of the same bookmark 1557 // TCM ID - 3719307 - Test a scenario of updating the name of the same bookmark
1626 // from two clients at the same time. 1558 // from two clients at the same time.
1627 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 1559 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
1628 MC_BookmarkNameChangeConflict) { 1560 MC_BookmarkNameChangeConflict) {
1629 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 1561 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
1630 1562
1631 const BookmarkNode* folder0 = 1563 const BookmarkNode* folder0 = AddFolder(0, kGenericFolderName);
1632 BookmarksHelper::AddFolder(0, kGenericFolderName);
1633 ASSERT_TRUE(folder0 != NULL); 1564 ASSERT_TRUE(folder0 != NULL);
1634 for (int i = 0; i < 3; ++i) { 1565 for (int i = 0; i < 3; ++i) {
1635 std::wstring title = BookmarksHelper::IndexedURLTitle(i); 1566 std::wstring title = IndexedURLTitle(i);
1636 GURL url = GURL(BookmarksHelper::IndexedURL(i)); 1567 GURL url = GURL(IndexedURL(i));
1637 ASSERT_TRUE(BookmarksHelper::AddURL(0, folder0, i, title, url) != NULL); 1568 ASSERT_TRUE(AddURL(0, folder0, i, title, url) != NULL);
1638 } 1569 }
1639 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 1570 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
1640 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 1571 ASSERT_TRUE(AllModelsMatchVerifier());
1641 ASSERT_FALSE(BookmarksHelper::ContainsDuplicateBookmarks(0)); 1572 ASSERT_FALSE(ContainsDuplicateBookmarks(0));
1642 1573
1643 DisableVerifier(); 1574 DisableVerifier();
1644 GURL url(BookmarksHelper::IndexedURL(0)); 1575 GURL url(IndexedURL(0));
1645 BookmarksHelper::SetTitle( 1576 SetTitle(0, GetUniqueNodeByURL(0, url), L"Title++");
1646 0, BookmarksHelper::GetUniqueNodeByURL(0, url), L"Title++"); 1577 SetTitle(1, GetUniqueNodeByURL(1, url), L"Title--");
1647 BookmarksHelper::SetTitle(
1648 1, BookmarksHelper::GetUniqueNodeByURL(1, url), L"Title--");
1649 1578
1650 ASSERT_TRUE(AwaitQuiescence()); 1579 ASSERT_TRUE(AwaitQuiescence());
1651 ASSERT_TRUE(BookmarksHelper::AllModelsMatch()); 1580 ASSERT_TRUE(AllModelsMatch());
1652 ASSERT_FALSE(BookmarksHelper::ContainsDuplicateBookmarks(0)); 1581 ASSERT_FALSE(ContainsDuplicateBookmarks(0));
1653 } 1582 }
1654 1583
1655 // TCM ID - 3672299 - Test a scenario of updating the URL of the same bookmark 1584 // TCM ID - 3672299 - Test a scenario of updating the URL of the same bookmark
1656 // from two clients at the same time. 1585 // from two clients at the same time.
1657 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 1586 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
1658 MC_BookmarkURLChangeConflict) { 1587 MC_BookmarkURLChangeConflict) {
1659 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 1588 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
1660 1589
1661 const BookmarkNode* folder0 = 1590 const BookmarkNode* folder0 = AddFolder(0, kGenericFolderName);
1662 BookmarksHelper::AddFolder(0, kGenericFolderName);
1663 ASSERT_TRUE(folder0 != NULL); 1591 ASSERT_TRUE(folder0 != NULL);
1664 for (int i = 0; i < 3; ++i) { 1592 for (int i = 0; i < 3; ++i) {
1665 std::wstring title = BookmarksHelper::IndexedURLTitle(i); 1593 std::wstring title = IndexedURLTitle(i);
1666 GURL url = GURL(BookmarksHelper::IndexedURL(i)); 1594 GURL url = GURL(IndexedURL(i));
1667 ASSERT_TRUE(BookmarksHelper::AddURL(0, folder0, i, title, url) != NULL); 1595 ASSERT_TRUE(AddURL(0, folder0, i, title, url) != NULL);
1668 } 1596 }
1669 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 1597 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
1670 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 1598 ASSERT_TRUE(AllModelsMatchVerifier());
1671 ASSERT_FALSE(BookmarksHelper::ContainsDuplicateBookmarks(0)); 1599 ASSERT_FALSE(ContainsDuplicateBookmarks(0));
1672 1600
1673 DisableVerifier(); 1601 DisableVerifier();
1674 GURL url(BookmarksHelper::IndexedURL(0)); 1602 GURL url(IndexedURL(0));
1675 ASSERT_TRUE(BookmarksHelper::SetURL(0, 1603 ASSERT_TRUE(SetURL(
1676 BookmarksHelper::GetUniqueNodeByURL(0, url), 1604 0, GetUniqueNodeByURL(0, url), GURL("http://www.google.com/00")));
1677 GURL("http://www.google.com/00"))); 1605 ASSERT_TRUE(SetURL(
1678 ASSERT_TRUE(BookmarksHelper::SetURL(1, 1606 1, GetUniqueNodeByURL(1, url), GURL("http://www.google.com/11")));
1679 BookmarksHelper::GetUniqueNodeByURL(1, url),
1680 GURL("http://www.google.com/11")));
1681 1607
1682 ASSERT_TRUE(AwaitQuiescence()); 1608 ASSERT_TRUE(AwaitQuiescence());
1683 ASSERT_TRUE(BookmarksHelper::AllModelsMatch()); 1609 ASSERT_TRUE(AllModelsMatch());
1684 ASSERT_FALSE(BookmarksHelper::ContainsDuplicateBookmarks(0)); 1610 ASSERT_FALSE(ContainsDuplicateBookmarks(0));
1685 } 1611 }
1686 1612
1687 // TCM ID - 3699290 - Test a scenario of updating the BM Folder name from two 1613 // TCM ID - 3699290 - Test a scenario of updating the BM Folder name from two
1688 // clients at the same time. 1614 // clients at the same time.
1689 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 1615 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
1690 MC_FolderNameChangeConflict) { 1616 MC_FolderNameChangeConflict) {
1691 ASSERT_TRUE(SetupClients()) << "SetupClients() failed."; 1617 ASSERT_TRUE(SetupClients()) << "SetupClients() failed.";
1692 DisableVerifier(); 1618 DisableVerifier();
1693 1619
1694 const BookmarkNode* folderA[2]; 1620 const BookmarkNode* folderA[2];
1695 const BookmarkNode* folderB[2]; 1621 const BookmarkNode* folderB[2];
1696 const BookmarkNode* folderC[2]; 1622 const BookmarkNode* folderC[2];
1697 1623
1698 // Create empty folder A on both clients. 1624 // Create empty folder A on both clients.
1699 folderA[0] = 1625 folderA[0] = AddFolder(0, IndexedFolderName(0));
1700 BookmarksHelper::AddFolder(0, BookmarksHelper::IndexedFolderName(0));
1701 ASSERT_TRUE(folderA[0] != NULL); 1626 ASSERT_TRUE(folderA[0] != NULL);
1702 folderA[1] = 1627 folderA[1] = AddFolder(1, IndexedFolderName(0));
1703 BookmarksHelper::AddFolder(1, BookmarksHelper::IndexedFolderName(0));
1704 ASSERT_TRUE(folderA[1] != NULL); 1628 ASSERT_TRUE(folderA[1] != NULL);
1705 1629
1706 // Create folder B with bookmarks on both clients. 1630 // Create folder B with bookmarks on both clients.
1707 folderB[0] = 1631 folderB[0] = AddFolder(0, IndexedFolderName(1));
1708 BookmarksHelper::AddFolder(0, BookmarksHelper::IndexedFolderName(1));
1709 ASSERT_TRUE(folderB[0] != NULL); 1632 ASSERT_TRUE(folderB[0] != NULL);
1710 folderB[1] = 1633 folderB[1] = AddFolder(1, IndexedFolderName(1));
1711 BookmarksHelper::AddFolder(1, BookmarksHelper::IndexedFolderName(1));
1712 ASSERT_TRUE(folderB[1] != NULL); 1634 ASSERT_TRUE(folderB[1] != NULL);
1713 for (int i = 0; i < 3; ++i) { 1635 for (int i = 0; i < 3; ++i) {
1714 std::wstring title = BookmarksHelper::IndexedURLTitle(i); 1636 std::wstring title = IndexedURLTitle(i);
1715 GURL url = GURL(BookmarksHelper::IndexedURL(i)); 1637 GURL url = GURL(IndexedURL(i));
1716 ASSERT_TRUE(BookmarksHelper::AddURL(0, folderB[0], i, title, url) != NULL); 1638 ASSERT_TRUE(AddURL(0, folderB[0], i, title, url) != NULL);
1717 } 1639 }
1718 1640
1719 // Create folder C with bookmarks and subfolders on both clients. 1641 // Create folder C with bookmarks and subfolders on both clients.
1720 folderC[0] = 1642 folderC[0] = AddFolder(0, IndexedFolderName(2));
1721 BookmarksHelper::AddFolder(0, BookmarksHelper::IndexedFolderName(2));
1722 ASSERT_TRUE(folderC[0] != NULL); 1643 ASSERT_TRUE(folderC[0] != NULL);
1723 folderC[1] = 1644 folderC[1] = AddFolder(1, IndexedFolderName(2));
1724 BookmarksHelper::AddFolder(1, BookmarksHelper::IndexedFolderName(2));
1725 ASSERT_TRUE(folderC[1] != NULL); 1645 ASSERT_TRUE(folderC[1] != NULL);
1726 for (int i = 0; i < 3; ++i) { 1646 for (int i = 0; i < 3; ++i) {
1727 std::wstring folder_name = BookmarksHelper::IndexedSubfolderName(i); 1647 std::wstring folder_name = IndexedSubfolderName(i);
1728 const BookmarkNode* subfolder = 1648 const BookmarkNode* subfolder = AddFolder(0, folderC[0], i, folder_name);
1729 BookmarksHelper::AddFolder(0, folderC[0], i, folder_name);
1730 ASSERT_TRUE(subfolder != NULL); 1649 ASSERT_TRUE(subfolder != NULL);
1731 for (int j = 0; j < 3; ++j) { 1650 for (int j = 0; j < 3; ++j) {
1732 std::wstring title = BookmarksHelper::IndexedURLTitle(j); 1651 std::wstring title = IndexedURLTitle(j);
1733 GURL url = GURL(BookmarksHelper::IndexedURL(j)); 1652 GURL url = GURL(IndexedURL(j));
1734 ASSERT_TRUE(BookmarksHelper::AddURL(0, subfolder, j, title, url) != NULL); 1653 ASSERT_TRUE(AddURL(0, subfolder, j, title, url) != NULL);
1735 } 1654 }
1736 } 1655 }
1737 1656
1738 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 1657 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
1739 ASSERT_TRUE(AwaitQuiescence()); 1658 ASSERT_TRUE(AwaitQuiescence());
1740 ASSERT_TRUE(BookmarksHelper::AllModelsMatch()); 1659 ASSERT_TRUE(AllModelsMatch());
1741 ASSERT_FALSE(BookmarksHelper::ContainsDuplicateBookmarks(0)); 1660 ASSERT_FALSE(ContainsDuplicateBookmarks(0));
1742 1661
1743 // Simultaneously rename folder A on both clients. 1662 // Simultaneously rename folder A on both clients.
1744 BookmarksHelper::SetTitle(0, folderA[0], L"Folder A++"); 1663 SetTitle(0, folderA[0], L"Folder A++");
1745 BookmarksHelper::SetTitle(1, folderA[1], L"Folder A--"); 1664 SetTitle(1, folderA[1], L"Folder A--");
1746 ASSERT_TRUE(AwaitQuiescence()); 1665 ASSERT_TRUE(AwaitQuiescence());
1747 ASSERT_TRUE(BookmarksHelper::AllModelsMatch()); 1666 ASSERT_TRUE(AllModelsMatch());
1748 ASSERT_FALSE(BookmarksHelper::ContainsDuplicateBookmarks(0)); 1667 ASSERT_FALSE(ContainsDuplicateBookmarks(0));
1749 1668
1750 // Simultaneously rename folder B on both clients. 1669 // Simultaneously rename folder B on both clients.
1751 BookmarksHelper::SetTitle(0, folderB[0], L"Folder B++"); 1670 SetTitle(0, folderB[0], L"Folder B++");
1752 BookmarksHelper::SetTitle(1, folderB[1], L"Folder B--"); 1671 SetTitle(1, folderB[1], L"Folder B--");
1753 ASSERT_TRUE(AwaitQuiescence()); 1672 ASSERT_TRUE(AwaitQuiescence());
1754 ASSERT_TRUE(BookmarksHelper::AllModelsMatch()); 1673 ASSERT_TRUE(AllModelsMatch());
1755 ASSERT_FALSE(BookmarksHelper::ContainsDuplicateBookmarks(0)); 1674 ASSERT_FALSE(ContainsDuplicateBookmarks(0));
1756 1675
1757 // Simultaneously rename folder C on both clients. 1676 // Simultaneously rename folder C on both clients.
1758 BookmarksHelper::SetTitle(0, folderC[0], L"Folder C++"); 1677 SetTitle(0, folderC[0], L"Folder C++");
1759 BookmarksHelper::SetTitle(1, folderC[1], L"Folder C--"); 1678 SetTitle(1, folderC[1], L"Folder C--");
1760 ASSERT_TRUE(AwaitQuiescence()); 1679 ASSERT_TRUE(AwaitQuiescence());
1761 ASSERT_TRUE(BookmarksHelper::AllModelsMatch()); 1680 ASSERT_TRUE(AllModelsMatch());
1762 ASSERT_FALSE(BookmarksHelper::ContainsDuplicateBookmarks(0)); 1681 ASSERT_FALSE(ContainsDuplicateBookmarks(0));
1763 } 1682 }
1764 1683
1765 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 1684 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
1766 SingleClientEnabledEncryption) { 1685 SingleClientEnabledEncryption) {
1767 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 1686 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
1768 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 1687 ASSERT_TRUE(AllModelsMatchVerifier());
1769 1688
1770 ASSERT_TRUE(BookmarksHelper::EnableEncryption(0)); 1689 ASSERT_TRUE(EnableEncryption(0));
1771 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 1690 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
1772 ASSERT_TRUE(BookmarksHelper::IsEncrypted(0)); 1691 ASSERT_TRUE(IsEncrypted(0));
1773 ASSERT_TRUE(BookmarksHelper::IsEncrypted(1)); 1692 ASSERT_TRUE(IsEncrypted(1));
1774 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 1693 ASSERT_TRUE(AllModelsMatchVerifier());
1775 } 1694 }
1776 1695
1777 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 1696 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
1778 SingleClientEnabledEncryptionAndChanged) { 1697 SingleClientEnabledEncryptionAndChanged) {
1779 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 1698 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
1780 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 1699 ASSERT_TRUE(AllModelsMatchVerifier());
1781 1700
1782 ASSERT_TRUE(BookmarksHelper::EnableEncryption(0)); 1701 ASSERT_TRUE(EnableEncryption(0));
1783 ASSERT_TRUE(BookmarksHelper::AddURL( 1702 ASSERT_TRUE(AddURL(0, IndexedURLTitle(0), GURL(IndexedURL(0))) != NULL);
1784 0,
1785 BookmarksHelper::IndexedURLTitle(0),
1786 GURL(BookmarksHelper::IndexedURL(0))) != NULL);
1787 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 1703 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
1788 ASSERT_TRUE(BookmarksHelper::IsEncrypted(0)); 1704 ASSERT_TRUE(IsEncrypted(0));
1789 ASSERT_TRUE(BookmarksHelper::IsEncrypted(1)); 1705 ASSERT_TRUE(IsEncrypted(1));
1790 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 1706 ASSERT_TRUE(AllModelsMatchVerifier());
1791 } 1707 }
1792 1708
1793 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 1709 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
1794 BothClientsEnabledEncryption) { 1710 BothClientsEnabledEncryption) {
1795 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 1711 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
1796 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 1712 ASSERT_TRUE(AllModelsMatchVerifier());
1797 1713
1798 ASSERT_TRUE(BookmarksHelper::EnableEncryption(0)); 1714 ASSERT_TRUE(EnableEncryption(0));
1799 ASSERT_TRUE(BookmarksHelper::EnableEncryption(1)); 1715 ASSERT_TRUE(EnableEncryption(1));
1800 ASSERT_TRUE(AwaitQuiescence()); 1716 ASSERT_TRUE(AwaitQuiescence());
1801 ASSERT_TRUE(BookmarksHelper::IsEncrypted(0)); 1717 ASSERT_TRUE(IsEncrypted(0));
1802 ASSERT_TRUE(BookmarksHelper::IsEncrypted(1)); 1718 ASSERT_TRUE(IsEncrypted(1));
1803 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 1719 ASSERT_TRUE(AllModelsMatchVerifier());
1804 } 1720 }
1805 1721
1806 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 1722 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
1807 SingleClientEnabledEncryptionBothChanged) { 1723 SingleClientEnabledEncryptionBothChanged) {
1808 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 1724 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
1809 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 1725 ASSERT_TRUE(AllModelsMatchVerifier());
1810 1726
1811 ASSERT_TRUE(BookmarksHelper::EnableEncryption(0)); 1727 ASSERT_TRUE(EnableEncryption(0));
1812 ASSERT_TRUE(AwaitQuiescence()); 1728 ASSERT_TRUE(AwaitQuiescence());
1813 ASSERT_TRUE(BookmarksHelper::IsEncrypted(0)); 1729 ASSERT_TRUE(IsEncrypted(0));
1814 ASSERT_TRUE(BookmarksHelper::IsEncrypted(1)); 1730 ASSERT_TRUE(IsEncrypted(1));
1815 ASSERT_TRUE(BookmarksHelper::AddURL(0, BookmarksHelper::IndexedURLTitle(0), 1731 ASSERT_TRUE(AddURL(0, IndexedURLTitle(0), GURL(IndexedURL(0))) != NULL);
1816 GURL(BookmarksHelper::IndexedURL(0))) != NULL); 1732 ASSERT_TRUE(AddURL(0, IndexedURLTitle(1), GURL(IndexedURL(1))) != NULL);
1817 ASSERT_TRUE(BookmarksHelper::AddURL(0, BookmarksHelper::IndexedURLTitle(1),
1818 GURL(BookmarksHelper::IndexedURL(1))) != NULL);
1819 ASSERT_TRUE(AwaitQuiescence()); 1733 ASSERT_TRUE(AwaitQuiescence());
1820 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 1734 ASSERT_TRUE(AllModelsMatchVerifier());
1821 ASSERT_TRUE(BookmarksHelper::IsEncrypted(0)); 1735 ASSERT_TRUE(IsEncrypted(0));
1822 ASSERT_TRUE(BookmarksHelper::IsEncrypted(1)); 1736 ASSERT_TRUE(IsEncrypted(1));
1823 } 1737 }
1824 1738
1825 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest, 1739 IN_PROC_BROWSER_TEST_F(TwoClientBookmarksSyncTest,
1826 SingleClientEnabledEncryptionAndChangedMultipleTimes) { 1740 SingleClientEnabledEncryptionAndChangedMultipleTimes) {
1827 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 1741 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
1828 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 1742 ASSERT_TRUE(AllModelsMatchVerifier());
1829 1743
1830 ASSERT_TRUE(BookmarksHelper::AddURL(0, BookmarksHelper::IndexedURLTitle(0), 1744 ASSERT_TRUE(AddURL(0, IndexedURLTitle(0), GURL(IndexedURL(0))) != NULL);
1831 GURL(BookmarksHelper::IndexedURL(0))) != NULL); 1745 ASSERT_TRUE(EnableEncryption(0));
1832 ASSERT_TRUE(BookmarksHelper::EnableEncryption(0));
1833 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 1746 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
1834 ASSERT_TRUE(BookmarksHelper::IsEncrypted(0)); 1747 ASSERT_TRUE(IsEncrypted(0));
1835 ASSERT_TRUE(BookmarksHelper::IsEncrypted(1)); 1748 ASSERT_TRUE(IsEncrypted(1));
1836 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 1749 ASSERT_TRUE(AllModelsMatchVerifier());
1837 1750
1838 ASSERT_TRUE(BookmarksHelper::AddURL(0, BookmarksHelper::IndexedURLTitle(1), 1751 ASSERT_TRUE(AddURL(0, IndexedURLTitle(1), GURL(IndexedURL(1))) != NULL);
1839 GURL(BookmarksHelper::IndexedURL(1))) != NULL); 1752 ASSERT_TRUE(AddFolder(0, IndexedFolderName(0)) != NULL);
1840 ASSERT_TRUE(BookmarksHelper::AddFolder(
1841 0, BookmarksHelper::IndexedFolderName(0)) != NULL);
1842 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 1753 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
1843 ASSERT_TRUE(BookmarksHelper::AllModelsMatchVerifier()); 1754 ASSERT_TRUE(AllModelsMatchVerifier());
1844 } 1755 }
1845 1756
1846 // TODO(zea): Add first time sync functionality testing. In particular, when 1757 // TODO(zea): Add first time sync functionality testing. In particular, when
1847 // there are encrypted types in first time sync we need to ensure we don't 1758 // there are encrypted types in first time sync we need to ensure we don't
1848 // duplicate bookmarks. 1759 // duplicate bookmarks.
OLDNEW
« no previous file with comments | « chrome/test/live_sync/two_client_autofill_sync_test.cc ('k') | chrome/test/live_sync/two_client_live_typed_urls_sync_test.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698