diff options
author | prachij@chromium.org <prachij@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-02-14 00:00:38 +0000 |
---|---|---|
committer | prachij@chromium.org <prachij@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-02-14 00:00:38 +0000 |
commit | 06041ec579cc0b6adc56acbfd2f6ffdeade63046 (patch) | |
tree | 544411cbba93393b57ca1697b407cfa98bc1ecd0 /chrome | |
parent | 5e91924b06cba1567eb89b5959094dc01f2e41aa (diff) | |
download | chromium_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.py | 42 |
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() |