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

Side by Side Diff: chrome/browser/sync/test/integration/two_client_sessions_sync_test.cc

Issue 8334030: Merge search engines sync data type with Preferences. Sync the default search provider. Add some ... (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: '' Created 9 years, 1 month 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/memory/scoped_vector.h" 5 #include "base/memory/scoped_vector.h"
6 #include "chrome/browser/sessions/session_service.h" 6 #include "chrome/browser/sessions/session_service.h"
7 #include "chrome/browser/sync/profile_sync_service_harness.h" 7 #include "chrome/browser/sync/profile_sync_service_harness.h"
8 #include "chrome/browser/sync/sessions/session_state.h" 8 #include "chrome/browser/sync/sessions/session_state.h"
9 #include "chrome/browser/sync/test/integration/sync_test.h" 9 #include "chrome/browser/sync/test/integration/sync_test.h"
10 #include "chrome/browser/sync/test/integration/sessions_helper.h" 10 #include "chrome/browser/sync/test/integration/sessions_helper.h"
(...skipping 142 matching lines...) Expand 10 before | Expand all | Expand 10 after
153 ASSERT_TRUE(OpenTabAndGetLocalWindows(0, GURL(kURL1), 153 ASSERT_TRUE(OpenTabAndGetLocalWindows(0, GURL(kURL1),
154 client0_windows.GetMutable())); 154 client0_windows.GetMutable()));
155 155
156 ASSERT_TRUE(EnableEncryption(0, syncable::SESSIONS)); 156 ASSERT_TRUE(EnableEncryption(0, syncable::SESSIONS));
157 GetClient(0)->service()->SetPassphrase(kValidPassphrase, true); 157 GetClient(0)->service()->SetPassphrase(kValidPassphrase, true);
158 ASSERT_TRUE(GetClient(0)->AwaitPassphraseAccepted()); 158 ASSERT_TRUE(GetClient(0)->AwaitPassphraseAccepted());
159 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 159 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
160 ASSERT_TRUE(GetClient(1)->AwaitPassphraseRequired()); 160 ASSERT_TRUE(GetClient(1)->AwaitPassphraseRequired());
161 ASSERT_EQ(0, GetClient(1)->GetLastSessionSnapshot()-> 161 ASSERT_EQ(0, GetClient(1)->GetLastSessionSnapshot()->
162 num_blocking_conflicting_updates); 162 num_blocking_conflicting_updates);
163 // We have 6 non-blocking conflicts due to the two meta nodes (one for each 163 // We have two meta nodes (one for each client), the one tab node, plus the
164 // client), the one tab node, and the six basic preference/themes/search 164 // basic preference/themes/search engines items.
165 // engines. 165 ASSERT_EQ(NumberOfDefaultItems() + 3, GetClient(1)->GetLastSessionSnapshot()->
166 ASSERT_EQ(9, GetClient(1)->GetLastSessionSnapshot()->
167 num_conflicting_updates); // The encrypted nodes. 166 num_conflicting_updates); // The encrypted nodes.
168 167
169 GetClient(1)->service()->SetPassphrase(kValidPassphrase, true); 168 GetClient(1)->service()->SetPassphrase(kValidPassphrase, true);
170 ASSERT_TRUE(GetClient(1)->AwaitPassphraseAccepted()); 169 ASSERT_TRUE(GetClient(1)->AwaitPassphraseAccepted());
171 ASSERT_TRUE(GetClient(1)->WaitForTypeEncryption(syncable::SESSIONS)); 170 ASSERT_TRUE(GetClient(1)->WaitForTypeEncryption(syncable::SESSIONS));
172 171
173 ASSERT_TRUE(IsEncrypted(0, syncable::SESSIONS)); 172 ASSERT_TRUE(IsEncrypted(0, syncable::SESSIONS));
174 ASSERT_TRUE(IsEncrypted(1, syncable::SESSIONS)); 173 ASSERT_TRUE(IsEncrypted(1, syncable::SESSIONS));
175 // Get foreign session data from client 0 and 1. 174 // Get foreign session data from client 0 and 1.
176 SyncedSessionVector sessions1; 175 SyncedSessionVector sessions1;
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after
235 ASSERT_TRUE(CheckInitialState(1)); 234 ASSERT_TRUE(CheckInitialState(1));
236 235
237 ASSERT_TRUE(EnableEncryption(0, syncable::SESSIONS)); 236 ASSERT_TRUE(EnableEncryption(0, syncable::SESSIONS));
238 GetClient(0)->service()->SetPassphrase(kValidPassphrase, true); 237 GetClient(0)->service()->SetPassphrase(kValidPassphrase, true);
239 ASSERT_TRUE(GetClient(0)->AwaitPassphraseAccepted()); 238 ASSERT_TRUE(GetClient(0)->AwaitPassphraseAccepted());
240 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 239 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
241 ASSERT_TRUE(GetClient(1)->AwaitPassphraseRequired()); 240 ASSERT_TRUE(GetClient(1)->AwaitPassphraseRequired());
242 ASSERT_EQ(0, GetClient(1)->GetLastSessionSnapshot()-> 241 ASSERT_EQ(0, GetClient(1)->GetLastSessionSnapshot()->
243 num_blocking_conflicting_updates); 242 num_blocking_conflicting_updates);
244 // We have two non-blocking conflicts due to the two meta nodes (one for each 243 // We have two non-blocking conflicts due to the two meta nodes (one for each
245 // client), and the 6 basic preference/themes/search engines nodes. 244 // client), plus the basic preference/themes/search engines nodes.
246 ASSERT_EQ(8, GetClient(1)->GetLastSessionSnapshot()-> 245 ASSERT_EQ(NumberOfDefaultItems() + 2, GetClient(1)->GetLastSessionSnapshot()->
247 num_conflicting_updates); // The encrypted nodes. 246 num_conflicting_updates); // The encrypted nodes.
248 247
249 // These changes are either made with the old passphrase or not encrypted at 248 // These changes are either made with the old passphrase or not encrypted at
250 // all depending on when client 0's changes are propagated. 249 // all depending on when client 0's changes are propagated.
251 ScopedWindowMap client1_windows; 250 ScopedWindowMap client1_windows;
252 ASSERT_TRUE(OpenTabAndGetLocalWindows(1, GURL(kURL1), 251 ASSERT_TRUE(OpenTabAndGetLocalWindows(1, GURL(kURL1),
253 client1_windows.GetMutable())); 252 client1_windows.GetMutable()));
254 253
255 // At this point we enter the passphrase, triggering a resync, in which the 254 // At this point we enter the passphrase, triggering a resync, in which the
256 // local changes of client 1 get overwritten for now. 255 // local changes of client 1 get overwritten for now.
(...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after
332 // These changes will sync over to client 1, who will be unable to decrypt 331 // These changes will sync over to client 1, who will be unable to decrypt
333 // them due to the missing passphrase. 332 // them due to the missing passphrase.
334 ScopedWindowMap client0_windows; 333 ScopedWindowMap client0_windows;
335 ASSERT_TRUE(OpenTabAndGetLocalWindows(0, GURL(kURL1), 334 ASSERT_TRUE(OpenTabAndGetLocalWindows(0, GURL(kURL1),
336 client0_windows.GetMutable())); 335 client0_windows.GetMutable()));
337 ASSERT_TRUE(EnableEncryption(0, syncable::SESSIONS)); 336 ASSERT_TRUE(EnableEncryption(0, syncable::SESSIONS));
338 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 337 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
339 ASSERT_EQ(0, GetClient(1)->GetLastSessionSnapshot()-> 338 ASSERT_EQ(0, GetClient(1)->GetLastSessionSnapshot()->
340 num_blocking_conflicting_updates); 339 num_blocking_conflicting_updates);
341 // We have three non-blocking conflicts due to the two meta nodes (one for 340 // We have three non-blocking conflicts due to the two meta nodes (one for
342 // each client), the one tab node, and the 6 basic preference/themes/search 341 // each client), the one tab node, plus the basic preference/themes/search
343 // engines nodes. 342 // engines nodes.
344 ASSERT_EQ(9, GetClient(1)->GetLastSessionSnapshot()-> 343 ASSERT_EQ(NumberOfDefaultItems() + 3, GetClient(1)->GetLastSessionSnapshot()->
345 num_conflicting_updates); // The encrypted nodes. 344 num_conflicting_updates); // The encrypted nodes.
346 345
347 GetClient(1)->service()->SetPassphrase(kValidPassphrase, true); 346 GetClient(1)->service()->SetPassphrase(kValidPassphrase, true);
348 ASSERT_TRUE(GetClient(1)->AwaitPassphraseAccepted()); 347 ASSERT_TRUE(GetClient(1)->AwaitPassphraseAccepted());
349 ASSERT_FALSE(GetClient(1)->service()->IsPassphraseRequired()); 348 ASSERT_FALSE(GetClient(1)->service()->IsPassphraseRequired());
350 ASSERT_TRUE(GetClient(1)->WaitForTypeEncryption(syncable::SESSIONS)); 349 ASSERT_TRUE(GetClient(1)->WaitForTypeEncryption(syncable::SESSIONS));
351 350
352 // Open windows on client 1, which should automatically be encrypted. 351 // Open windows on client 1, which should automatically be encrypted.
353 ScopedWindowMap client1_windows; 352 ScopedWindowMap client1_windows;
354 ASSERT_TRUE(OpenTabAndGetLocalWindows(1, GURL(kURL2), 353 ASSERT_TRUE(OpenTabAndGetLocalWindows(1, GURL(kURL2),
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after
421 ASSERT_FALSE(GetSessionData(1, &sessions1)); 420 ASSERT_FALSE(GetSessionData(1, &sessions1));
422 421
423 // Client 0 becomes active again with a new tab. 422 // Client 0 becomes active again with a new tab.
424 ASSERT_TRUE(OpenTabAndGetLocalWindows(0, GURL(kURL2), 423 ASSERT_TRUE(OpenTabAndGetLocalWindows(0, GURL(kURL2),
425 client0_windows.GetMutable())); 424 client0_windows.GetMutable()));
426 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1))); 425 ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
427 ASSERT_TRUE(GetSessionData(1, &sessions1)); 426 ASSERT_TRUE(GetSessionData(1, &sessions1));
428 ASSERT_EQ(1U, sessions1.size()); 427 ASSERT_EQ(1U, sessions1.size());
429 ASSERT_TRUE(WindowsMatch(sessions1[0]->windows, *client0_windows.Get())); 428 ASSERT_TRUE(WindowsMatch(sessions1[0]->windows, *client0_windows.Get()));
430 } 429 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698