Index: chrome/test/functional/search_engines.py |
=================================================================== |
--- chrome/test/functional/search_engines.py (revision 261231) |
+++ chrome/test/functional/search_engines.py (working copy) |
@@ -1,110 +0,0 @@ |
-#!/usr/bin/env python |
-# Copyright (c) 2011 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 re |
- |
-import pyauto_functional # Must be imported before pyauto |
-import pyauto |
-import test_utils |
- |
- |
-class SearchEnginesTest(pyauto.PyUITest): |
- """TestCase for Search Engines.""" |
- |
- _localhost_prefix = 'http://localhost:1000/' |
- |
- def _GetSearchEngineWithKeyword(self, keyword): |
- """Get search engine info and return an element that matches keyword. |
- |
- Args: |
- keyword: Search engine keyword field. |
- |
- Returns: |
- A search engine info dict or None. |
- """ |
- match_list = ([x for x in self.GetSearchEngineInfo() |
- if x['keyword'] == keyword]) |
- if match_list: |
- return match_list[0] |
- return None |
- |
- def Debug(self): |
- """Test method for experimentation. |
- |
- This method will not run automatically. |
- """ |
- while True: |
- raw_input('Interact with the browser and hit <enter>') |
- self.pprint(self.GetSearchEngineInfo()) |
- |
- def testDiscoverSearchEngine(self): |
- """Test that chrome discovers youtube search engine after searching.""" |
- # Take a snapshot of current search engine info. |
- info = self.GetSearchEngineInfo() |
- youtube = self._GetSearchEngineWithKeyword('youtube.com') |
- self.assertFalse(youtube) |
- # Use omnibox to invoke search engine discovery. |
- # Navigating using NavigateToURL does not currently invoke this logic. |
- self.SetOmniboxText('http://www.youtube.com') |
- self.OmniboxAcceptInput() |
- def InfoUpdated(old_info): |
- new_info = self.GetSearchEngineInfo() |
- if len(new_info) > len(old_info): |
- return True |
- return False |
- self.WaitUntil(lambda: InfoUpdated(info)) |
- youtube = self._GetSearchEngineWithKeyword('youtube.com') |
- self.assertTrue(youtube) |
- self.assertTrue(re.search('youtube', youtube['short_name'], |
- re.IGNORECASE)) |
- self.assertFalse(youtube['in_default_list']) |
- self.assertFalse(youtube['is_default']) |
- |
- def testDeleteSearchEngine(self): |
- """Test adding then deleting a search engine.""" |
- self.AddSearchEngine(title='foo', |
- keyword='foo.com', |
- url='http://foo/?q=%s') |
- foo = self._GetSearchEngineWithKeyword('foo.com') |
- self.assertTrue(foo) |
- self.DeleteSearchEngine('foo.com') |
- foo = self._GetSearchEngineWithKeyword('foo.com') |
- self.assertFalse(foo) |
- |
- def testMakeSearchEngineDefault(self): |
- """Test adding then making a search engine default.""" |
- self.AddSearchEngine( |
- title='foo', |
- keyword='foo.com', |
- url=self._localhost_prefix + '?q=%s') |
- foo = self._GetSearchEngineWithKeyword('foo.com') |
- self.assertTrue(foo) |
- self.assertFalse(foo['is_default']) |
- self.MakeSearchEngineDefault('foo.com') |
- foo = self._GetSearchEngineWithKeyword('foo.com') |
- self.assertTrue(foo) |
- self.assertTrue(foo['is_default']) |
- self.SetOmniboxText('foobar') |
- self.OmniboxAcceptInput() |
- self.assertEqual(self._localhost_prefix + '?q=foobar', |
- self.GetActiveTabURL().spec()) |
- |
- def testDefaultSearchEngines(self): |
- """Test that we have 3 default search options.""" |
- info = self.GetSearchEngineInfo() |
- self.assertEqual(len(info), 3) |
- # Verify that each can be used as the default search provider. |
- default_providers = ['google.com', 'yahoo.com', 'bing.com'] |
- for keyword in default_providers: |
- self.MakeSearchEngineDefault(keyword) |
- search_engine = self._GetSearchEngineWithKeyword(keyword) |
- self.assertTrue(search_engine['is_default']) |
- self.SetOmniboxText('test search') |
- self.OmniboxAcceptInput() |
- self.assertTrue(re.search(keyword, self.GetActiveTabURL().spec())) |
- |
- |
-if __name__ == '__main__': |
- pyauto_functional.Main() |