Index: chrome/test/functional/sync.py |
diff --git a/chrome/test/functional/sync.py b/chrome/test/functional/sync.py |
deleted file mode 100755 |
index 367c9c01442e81aef6da2c9eb44833a87a4de3a3..0000000000000000000000000000000000000000 |
--- a/chrome/test/functional/sync.py |
+++ /dev/null |
@@ -1,158 +0,0 @@ |
-#!/usr/bin/env python |
-# Copyright (c) 2012 The Chromium Authors. All rights reserved. |
-# Use of this source code is governed by a BSD-style license that can be |
-# found in the LICENSE file. |
- |
-import pyauto_functional # Must be imported before pyauto |
-import pyauto |
-import test_utils |
- |
- |
-class SyncTest(pyauto.PyUITest): |
- """Tests for sync.""" |
- |
- def testSignInToSync(self): |
- """Sign in to sync.""" |
- new_timeout = pyauto.PyUITest.ActionTimeoutChanger(self, |
- 60 * 1000) # 1 min. |
- test_utils.SignInToSyncAndVerifyState(self, 'test_google_account') |
- |
- def testDisableAndEnableDatatypes(self): |
- """Sign in, disable and then enable sync for multiple sync datatypes.""" |
- new_timeout = pyauto.PyUITest.ActionTimeoutChanger(self, |
- 2 * 60 * 1000) # 2 min. |
- test_utils.SignInToSyncAndVerifyState(self, 'test_google_account') |
- self.assertTrue(self.DisableSyncForDatatypes(['Apps', 'Autofill', |
- 'Bookmarks', 'Extensions', 'Preferences', 'Themes'])) |
- self.assertFalse('Apps' in self.GetSyncInfo()['synced datatypes']) |
- self.assertFalse('Autofill' in self.GetSyncInfo()['synced datatypes']) |
- self.assertFalse('Bookmarks' in self.GetSyncInfo()['synced datatypes']) |
- self.assertFalse('Extensions' in self.GetSyncInfo()['synced datatypes']) |
- self.assertFalse('Preferences' in self.GetSyncInfo()['synced datatypes']) |
- self.assertFalse('Themes' in self.GetSyncInfo()['synced datatypes']) |
- self.assertTrue(self.EnableSyncForDatatypes(['Apps', 'Autofill', |
- 'Bookmarks', 'Extensions', 'Preferences','Themes'])) |
- self.assertTrue(self.DisableSyncForDatatypes(['Passwords'])) |
- self.assertTrue('Apps' in self.GetSyncInfo()['synced datatypes']) |
- self.assertTrue('Autofill' in self.GetSyncInfo()['synced datatypes']) |
- self.assertTrue('Bookmarks' in self.GetSyncInfo()['synced datatypes']) |
- self.assertTrue('Extensions' in self.GetSyncInfo()['synced datatypes']) |
- self.assertTrue('Preferences' in self.GetSyncInfo()['synced datatypes']) |
- self.assertTrue('Themes' in self.GetSyncInfo()['synced datatypes']) |
- self.assertFalse('Passwords' in self.GetSyncInfo()['synced datatypes']) |
- |
- def testRestartBrowser(self): |
- """Sign in to sync and restart the browser.""" |
- new_timeout = pyauto.PyUITest.ActionTimeoutChanger(self, |
- 2 * 60 * 1000) # 2 min. |
- test_utils.SignInToSyncAndVerifyState(self, 'test_google_account') |
- self.RestartBrowser(clear_profile=False) |
- self.assertTrue(self.AwaitSyncRestart()) |
- self.assertTrue(self.GetSyncInfo()['last synced'] == 'Just now') |
- self.assertTrue(self.GetSyncInfo()['updates received'] == 0) |
- |
- def testPersonalStuffSyncSection(self): |
- """Verify the Sync section in Preferences before and after sync.""" |
- creds = self.GetPrivateInfo()['test_google_account'] |
- username = creds['username'] |
- password = creds['password'] |
- default_text = 'Keep everything synced or choose what data to sync' |
- set_up_button = 'Set Up Sync' |
- customize_button = 'Customize' |
- stop_button = 'Stop Sync' |
- signed_in_text = 'Google Dashboard' |
- chrome_settings_url = 'chrome://settings-frame' |
- new_timeout = pyauto.PyUITest.ActionTimeoutChanger(self, |
- 2 * 60 * 1000) # 2 min. |
- self.AppendTab(pyauto.GURL(chrome_settings_url)) |
- self.assertTrue(self.WaitUntil( |
- lambda: self.FindInPage(default_text, tab_index=1)['match_count'], |
- expect_retval=1), |
- 'No default sync text.') |
- self.assertTrue(self.WaitUntil( |
- lambda: self.FindInPage(set_up_button, tab_index=1)['match_count'], |
- expect_retval=1), |
- 'No set up sync button.') |
- |
- self.assertTrue(self.SignInToSync(username, password)) |
- self.ReloadTab(1) |
- self.assertTrue(self.WaitUntil( |
- lambda: self.FindInPage(username, tab_index=1)['match_count'], |
- expect_retval=1), |
- 'No sync user account information.') |
- self.assertTrue(self.WaitUntil( |
- lambda: self.FindInPage(signed_in_text, tab_index=1)['match_count'], |
- expect_retval=1), |
- 'No Google Dashboard information after signing in.') |
- self.assertTrue(self.WaitUntil( |
- lambda: self.FindInPage(stop_button, tab_index=1)['match_count'], |
- expect_retval=1), |
- 'No stop sync button.') |
- self.assertTrue(self.WaitUntil( |
- lambda: self.FindInPage(customize_button, tab_index=1)['match_count'], |
- expect_retval=1), |
- 'No customize sync button.') |
- |
- |
-class SyncIntegrationTest(pyauto.PyUITest): |
- """Test integration between sync and other components.""" |
- |
- def ExtraChromeFlags(self): |
- """Prepares the browser to launch with the specified extra Chrome flags. |
- |
- |ChromeFlagsForTestServer()| is invoked to create the flags list. |
- """ |
- return pyauto.PyUITest.ExtraChromeFlags(self) + \ |
- self.ChromeFlagsForSyncTestServer(**self._sync_server.ports) |
- |
- def setUp(self): |
- # LaunchPythonSyncServer() executes before pyauto.PyUITest.setUp() because |
- # the latter invokes ExtraChromeFlags() which requires the server's ports. |
- self._sync_server = self.StartSyncServer() |
- pyauto.PyUITest.setUp(self) |
- |
- def tearDown(self): |
- pyauto.PyUITest.tearDown(self) |
- self.StopSyncServer(self._sync_server) |
- |
- def testAddBookmarkAndVerifySync(self): |
- """Verify a bookmark syncs between two browsers. |
- |
- Integration tests between the bookmarks and sync features. A bookmark is |
- added to one instance of the browser, the bookmark is synced to the account, |
- a new instance of the browser is launched, the account is synced and the |
- bookmark info is synced on the new browser. |
- """ |
- # Launch a new instance of the browser with a clean profile (Browser 2) |
- browser2 = pyauto.ExtraBrowser( |
- self.ChromeFlagsForSyncTestServer(**self._sync_server.ports)) |
- |
- account_key = 'test_sync_account' |
- test_utils.SignInToSyncAndVerifyState(self, account_key) |
- self.AwaitSyncCycleCompletion() |
- |
- # Add a bookmark. |
- bookmarks = self.GetBookmarkModel() |
- bar_id = bookmarks.BookmarkBar()['id'] |
- name = 'Column test' |
- url = self.GetHttpURLForDataPath('columns.html') |
- self.NavigateToURL(url) |
- self.AddBookmarkURL(bar_id, 0, name, url) |
- |
- # Refresh the bookmarks in the first browser. |
- bookmarks = self.GetBookmarkModel() |
- |
- # Log into the account and sync the browser to the account. |
- test_utils.SignInToSyncAndVerifyState(browser2, account_key) |
- browser2.AwaitSyncCycleCompletion() |
- |
- # Verify browser 2 contains the bookmark. |
- browser2_bookmarks = browser2.GetBookmarkModel() |
- self.assertEqual(browser2_bookmarks.NodeCount(), bookmarks.NodeCount()) |
- bar_child = browser2_bookmarks.BookmarkBar()['children'][0] |
- self.assertEqual(bar_child['type'], 'url') |
- self.assertEqual(bar_child['name'], name) |
- self.assertTrue(url in bar_child['url']) |
- |
-if __name__ == '__main__': |
- pyauto_functional.Main() |