summaryrefslogtreecommitdiffstats
path: root/chrome
diff options
context:
space:
mode:
authorprachij@chromium.org <prachij@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-02-14 00:00:38 +0000
committerprachij@chromium.org <prachij@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-02-14 00:00:38 +0000
commit06041ec579cc0b6adc56acbfd2f6ffdeade63046 (patch)
tree544411cbba93393b57ca1697b407cfa98bc1ecd0 /chrome
parent5e91924b06cba1567eb89b5959094dc01f2e41aa (diff)
downloadchromium_src-06041ec579cc0b6adc56acbfd2f6ffdeade63046.zip
chromium_src-06041ec579cc0b6adc56acbfd2f6ffdeade63046.tar.gz
chromium_src-06041ec579cc0b6adc56acbfd2f6ffdeade63046.tar.bz2
one line description : Added new protector tests
Additional Details : BUG=NONE TEST=NONE Review URL: http://codereview.chromium.org/9368035 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@121768 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome')
-rw-r--r--chrome/test/functional/protector.py42
1 files changed, 41 insertions, 1 deletions
diff --git a/chrome/test/functional/protector.py b/chrome/test/functional/protector.py
index 42862a4..ec46ab9 100644
--- a/chrome/test/functional/protector.py
+++ b/chrome/test/functional/protector.py
@@ -185,11 +185,51 @@ class ProtectorTest(pyauto.PyUITest):
default_search['keyword'])
# No longer showing the change.
self.assertFalse(self.GetProtectorState()['showing_change'])
+ search_urls = [engine['url'] for engine in self.GetSearchEngineInfo()]
+ # Verify there are no duplicate search engines:
+ self.assertEqual(len(search_urls), len(set(search_urls)))
+ def testSearchEngineChangeWithMultipleWindows(self):
+ """Test that default search engine change is detected in multiple
+ browser windows.
+ """
+ # Get current search engine.
+ old_default_search = self._GetDefaultSearchEngine()
+ self.assertTrue(old_default_search)
+ # Close browser, change the search engine and start it again.
+ self.RestartBrowser(clear_profile=False,
+ pre_launch_hook=self._ChangeDefaultSearchEngine)
+ # The change must be detected by Protector in first window
+ self.OpenNewBrowserWindow(True)
+ self.assertTrue(self.GetProtectorState(window_index=0)['showing_change'])
+ # Open another Browser Window
+ self.OpenNewBrowserWindow(True)
+ # The change must be detected by Protector in second window
+ self.assertTrue(self.GetProtectorState(window_index=1)['showing_change'])
+
+ def testSearchEngineChangeDiscardedOnRelaunchingBrowser(self):
+ """Verify that relaunching the browser while Protector is showing a change
+ discards it.
+ """
+ # Get current search engine.
+ old_default_search = self._GetDefaultSearchEngine()
+ self.assertTrue(old_default_search)
+ # Close browser, change the search engine and start it again.
+ self.RestartBrowser(clear_profile=False,
+ pre_launch_hook=self._ChangeDefaultSearchEngine)
+ # The change must be detected by Protector.
+ self.assertTrue(self.GetProtectorState()['showing_change'])
+ default_search = self._GetDefaultSearchEngine()
+ self.assertEqual(old_default_search, default_search)
+ # After relaunching the browser, old search engine still must be active.
+ self.RestartBrowser(clear_profile=False)
+ default_search = self._GetDefaultSearchEngine()
+ self.assertEqual(old_default_search, default_search)
+ # No longer showing the change.
+ self.assertFalse(self.GetProtectorState()['showing_change'])
# TODO(ivankr): more hijacking cases (remove the current default search engine,
# add new search engines to the list, invalidate backup, etc).
-
if __name__ == '__main__':
pyauto_functional.Main()