| Index: chrome/browser/sync/test/integration/two_client_sessions_sync_test.cc
|
| diff --git a/chrome/browser/sync/test/integration/two_client_sessions_sync_test.cc b/chrome/browser/sync/test/integration/two_client_sessions_sync_test.cc
|
| index 066061d65496cfe761ab56d9939dc0aec9d7d179..b835befb94a518cd048d7fa84061ee2cdf7e9e63 100644
|
| --- a/chrome/browser/sync/test/integration/two_client_sessions_sync_test.cc
|
| +++ b/chrome/browser/sync/test/integration/two_client_sessions_sync_test.cc
|
| @@ -13,6 +13,8 @@ using sessions_helper::CheckInitialState;
|
| using sessions_helper::GetLocalWindows;
|
| using sessions_helper::GetSessionData;
|
| using sessions_helper::OpenTabAndGetLocalWindows;
|
| +using sessions_helper::ScopedWindowMap;
|
| +using sessions_helper::SyncedSessionVector;
|
| using sessions_helper::WindowsMatch;
|
|
|
| class TwoClientSessionsSyncTest : public SyncTest {
|
| @@ -38,8 +40,9 @@ IN_PROC_BROWSER_TEST_F(TwoClientSessionsSyncTest, SingleClientChanged) {
|
| ASSERT_TRUE(CheckInitialState(0));
|
| ASSERT_TRUE(CheckInitialState(1));
|
|
|
| - ScopedVector<SessionWindow> client0_windows;
|
| - ASSERT_TRUE(OpenTabAndGetLocalWindows(0, GURL(kURL1), client0_windows.get()));
|
| + ScopedWindowMap client0_windows;
|
| + ASSERT_TRUE(OpenTabAndGetLocalWindows(0, GURL(kURL1),
|
| + client0_windows.get()));
|
|
|
| ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
|
|
|
| @@ -49,7 +52,7 @@ IN_PROC_BROWSER_TEST_F(TwoClientSessionsSyncTest, SingleClientChanged) {
|
|
|
| // Verify client 1's foreign session matches client 0 current window.
|
| ASSERT_EQ(1U, sessions1.size());
|
| - ASSERT_TRUE(WindowsMatch(sessions1[0]->windows, client0_windows.get()));
|
| + ASSERT_TRUE(WindowsMatch(sessions1[0]->windows, *client0_windows.get()));
|
| }
|
|
|
| IN_PROC_BROWSER_TEST_F(TwoClientSessionsSyncTest,
|
| @@ -77,8 +80,9 @@ IN_PROC_BROWSER_TEST_F(TwoClientSessionsSyncTest,
|
| ASSERT_TRUE(CheckInitialState(0));
|
| ASSERT_TRUE(CheckInitialState(1));
|
|
|
| - ScopedVector<SessionWindow> client0_windows;
|
| - ASSERT_TRUE(OpenTabAndGetLocalWindows(0, GURL(kURL1), client0_windows.get()));
|
| + ScopedWindowMap client0_windows;
|
| + ASSERT_TRUE(OpenTabAndGetLocalWindows(0, GURL(kURL1),
|
| + client0_windows.get()));
|
| ASSERT_TRUE(EnableEncryption(0, syncable::SESSIONS));
|
| ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
|
|
|
| @@ -89,7 +93,7 @@ IN_PROC_BROWSER_TEST_F(TwoClientSessionsSyncTest,
|
|
|
| // Verify client 1's foreign session matches client 0 current window.
|
| ASSERT_EQ(1U, sessions1.size());
|
| - ASSERT_TRUE(WindowsMatch(sessions1[0]->windows, client0_windows.get()));
|
| + ASSERT_TRUE(WindowsMatch(sessions1[0]->windows, *client0_windows.get()));
|
| }
|
|
|
| IN_PROC_BROWSER_TEST_F(TwoClientSessionsSyncTest,
|
| @@ -113,10 +117,12 @@ IN_PROC_BROWSER_TEST_F(TwoClientSessionsSyncTest, BothChanged) {
|
| ASSERT_TRUE(CheckInitialState(1));
|
|
|
| // Open tabs on both clients and retain window information.
|
| - ScopedVector<SessionWindow> client0_windows;
|
| - ASSERT_TRUE(OpenTabAndGetLocalWindows(0, GURL(kURL2), client0_windows.get()));
|
| - ScopedVector<SessionWindow> client1_windows;
|
| - ASSERT_TRUE(OpenTabAndGetLocalWindows(1, GURL(kURL1), client1_windows.get()));
|
| + ScopedWindowMap client0_windows;
|
| + ASSERT_TRUE(OpenTabAndGetLocalWindows(0, GURL(kURL2),
|
| + client0_windows.get()));
|
| + ScopedWindowMap client1_windows;
|
| + ASSERT_TRUE(OpenTabAndGetLocalWindows(1, GURL(kURL1),
|
| + client1_windows.get()));
|
|
|
| // Wait for sync.
|
| ASSERT_TRUE(AwaitQuiescence());
|
| @@ -131,8 +137,8 @@ IN_PROC_BROWSER_TEST_F(TwoClientSessionsSyncTest, BothChanged) {
|
| // vice versa.
|
| ASSERT_EQ(1U, sessions0.size());
|
| ASSERT_EQ(1U, sessions1.size());
|
| - ASSERT_TRUE(WindowsMatch(sessions1[0]->windows, client0_windows.get()));
|
| - ASSERT_TRUE(WindowsMatch(sessions0[0]->windows, client1_windows.get()));
|
| + ASSERT_TRUE(WindowsMatch(sessions1[0]->windows, *client0_windows.get()));
|
| + ASSERT_TRUE(WindowsMatch(sessions0[0]->windows, *client1_windows.get()));
|
| }
|
|
|
| IN_PROC_BROWSER_TEST_F(TwoClientSessionsSyncTest,
|
| @@ -142,8 +148,9 @@ IN_PROC_BROWSER_TEST_F(TwoClientSessionsSyncTest,
|
| ASSERT_TRUE(CheckInitialState(0));
|
| ASSERT_TRUE(CheckInitialState(1));
|
|
|
| - ScopedVector<SessionWindow> client0_windows;
|
| - ASSERT_TRUE(OpenTabAndGetLocalWindows(0, GURL(kURL1), client0_windows.get()));
|
| + ScopedWindowMap client0_windows;
|
| + ASSERT_TRUE(OpenTabAndGetLocalWindows(0, GURL(kURL1),
|
| + client0_windows.get()));
|
|
|
| ASSERT_TRUE(EnableEncryption(0, syncable::SESSIONS));
|
| GetClient(0)->service()->SetPassphrase(kValidPassphrase, true);
|
| @@ -170,7 +177,7 @@ IN_PROC_BROWSER_TEST_F(TwoClientSessionsSyncTest,
|
| // Verify client 1's foreign session matches client 0's current window and
|
| // vice versa.
|
| ASSERT_EQ(1U, sessions1.size());
|
| - ASSERT_TRUE(WindowsMatch(sessions1[0]->windows, client0_windows.get()));
|
| + ASSERT_TRUE(WindowsMatch(sessions1[0]->windows, *client0_windows.get()));
|
| }
|
|
|
| // Flaky (number of conflicting nodes is off). http://crbug.com/89604.
|
| @@ -193,8 +200,9 @@ IN_PROC_BROWSER_TEST_F(TwoClientSessionsSyncTest,
|
| ASSERT_EQ(5, GetClient(1)->GetLastSessionSnapshot()->
|
| num_conflicting_updates); // The encrypted nodes.
|
|
|
| - ScopedVector<SessionWindow> client0_windows;
|
| - ASSERT_TRUE(OpenTabAndGetLocalWindows(0, GURL(kURL1), client0_windows.get()));
|
| + ScopedWindowMap client0_windows;
|
| + ASSERT_TRUE(OpenTabAndGetLocalWindows(0, GURL(kURL1),
|
| + client0_windows.get()));
|
| ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
|
| ASSERT_EQ(0, GetClient(1)->GetLastSessionSnapshot()->
|
| num_blocking_conflicting_updates);
|
| @@ -214,7 +222,7 @@ IN_PROC_BROWSER_TEST_F(TwoClientSessionsSyncTest,
|
| // Verify client 1's foreign session matches client 0's current window and
|
| // vice versa.
|
| ASSERT_EQ(1U, sessions1.size());
|
| - ASSERT_TRUE(WindowsMatch(sessions1[0]->windows, client0_windows.get()));
|
| + ASSERT_TRUE(WindowsMatch(sessions1[0]->windows, *client0_windows.get()));
|
| }
|
|
|
| IN_PROC_BROWSER_TEST_F(TwoClientSessionsSyncTest,
|
| @@ -238,8 +246,9 @@ IN_PROC_BROWSER_TEST_F(TwoClientSessionsSyncTest,
|
|
|
| // These changes are either made with the old passphrase or not encrypted at
|
| // all depending on when client 0's changes are propagated.
|
| - ScopedVector<SessionWindow> client1_windows;
|
| - ASSERT_TRUE(OpenTabAndGetLocalWindows(1, GURL(kURL1), client1_windows.get()));
|
| + ScopedWindowMap client1_windows;
|
| + ASSERT_TRUE(OpenTabAndGetLocalWindows(1, GURL(kURL1),
|
| + client1_windows.get()));
|
| ASSERT_TRUE(GetClient(1)->AwaitMutualSyncCycleCompletion(GetClient(0)));
|
| ASSERT_EQ(0, GetClient(1)->GetLastSessionSnapshot()->
|
| num_blocking_conflicting_updates);
|
| @@ -271,8 +280,9 @@ IN_PROC_BROWSER_TEST_F(TwoClientSessionsSyncTest,
|
| ASSERT_TRUE(CheckInitialState(1));
|
|
|
| // These changes are either made on client 1 without encryption.
|
| - ScopedVector<SessionWindow> client1_windows;
|
| - ASSERT_TRUE(OpenTabAndGetLocalWindows(1, GURL(kURL1), client1_windows.get()));
|
| + ScopedWindowMap client1_windows;
|
| + ASSERT_TRUE(OpenTabAndGetLocalWindows(1, GURL(kURL1),
|
| + client1_windows.get()));
|
| ASSERT_TRUE(GetClient(1)->AwaitMutualSyncCycleCompletion(GetClient(0)));
|
|
|
| // Turn encryption on client 0. Client 1's foreign will be encrypted with the
|
| @@ -303,7 +313,7 @@ IN_PROC_BROWSER_TEST_F(TwoClientSessionsSyncTest,
|
| ASSERT_TRUE(GetSessionData(0, &sessions0));
|
| ASSERT_FALSE(GetSessionData(1, &sessions1));
|
| ASSERT_EQ(1U, sessions0.size());
|
| - ASSERT_TRUE(WindowsMatch(sessions0[0]->windows, client1_windows.get()));
|
| + ASSERT_TRUE(WindowsMatch(sessions0[0]->windows, *client1_windows.get()));
|
| }
|
|
|
| IN_PROC_BROWSER_TEST_F(TwoClientSessionsSyncTest,
|
| @@ -320,8 +330,9 @@ IN_PROC_BROWSER_TEST_F(TwoClientSessionsSyncTest,
|
|
|
| // These changes will sync over to client 1, who will be unable to decrypt
|
| // them due to the missing passphrase.
|
| - ScopedVector<SessionWindow> client0_windows;
|
| - ASSERT_TRUE(OpenTabAndGetLocalWindows(0, GURL(kURL1), client0_windows.get()));
|
| + ScopedWindowMap client0_windows;
|
| + ASSERT_TRUE(OpenTabAndGetLocalWindows(0, GURL(kURL1),
|
| + client0_windows.get()));
|
| ASSERT_TRUE(EnableEncryption(0, syncable::SESSIONS));
|
| ASSERT_TRUE(GetClient(0)->AwaitMutualSyncCycleCompletion(GetClient(1)));
|
| ASSERT_EQ(0, GetClient(1)->GetLastSessionSnapshot()->
|
| @@ -337,8 +348,9 @@ IN_PROC_BROWSER_TEST_F(TwoClientSessionsSyncTest,
|
| ASSERT_TRUE(GetClient(1)->WaitForTypeEncryption(syncable::SESSIONS));
|
|
|
| // Open windows on client 1, which should automatically be encrypted.
|
| - ScopedVector<SessionWindow> client1_windows;
|
| - ASSERT_TRUE(OpenTabAndGetLocalWindows(1, GURL(kURL2), client1_windows.get()));
|
| + ScopedWindowMap client1_windows;
|
| + ASSERT_TRUE(OpenTabAndGetLocalWindows(1, GURL(kURL2),
|
| + client1_windows.get()));
|
| ASSERT_TRUE(GetClient(1)->AwaitMutualSyncCycleCompletion(GetClient(0)));
|
|
|
| ASSERT_TRUE(IsEncrypted(0, syncable::SESSIONS));
|
| @@ -353,6 +365,6 @@ IN_PROC_BROWSER_TEST_F(TwoClientSessionsSyncTest,
|
| // vice versa.
|
| ASSERT_EQ(1U, sessions0.size());
|
| ASSERT_EQ(1U, sessions1.size());
|
| - ASSERT_TRUE(WindowsMatch(sessions1[0]->windows, client0_windows.get()));
|
| - ASSERT_TRUE(WindowsMatch(sessions0[0]->windows, client1_windows.get()));
|
| + ASSERT_TRUE(WindowsMatch(sessions1[0]->windows, *client0_windows.get()));
|
| + ASSERT_TRUE(WindowsMatch(sessions0[0]->windows, *client1_windows.get()));
|
| }
|
|
|