Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(3056)

Unified Diff: chrome/test/functional/prefs_ui.py

Issue 222873002: Remove pyauto tests. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: sync Created 6 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/test/functional/prefs.py ('k') | chrome/test/functional/pyauto_functional.py » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/test/functional/prefs_ui.py
===================================================================
--- chrome/test/functional/prefs_ui.py (revision 261231)
+++ chrome/test/functional/prefs_ui.py (working copy)
@@ -1,343 +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 time
-
-import pyauto_functional # Must be imported before pyauto
-import pyauto
-import test_utils
-
-from webdriver_pages import settings
-from webdriver_pages.settings import Behaviors, ContentTypes
-from webdriver_pages.settings import RestoreOnStartupType
-
-
-class PrefsUITest(pyauto.PyUITest):
- """TestCase for Preferences UI."""
-
- INFOBAR_TYPE = 'rph_infobar'
-
- def setUp(self):
- pyauto.PyUITest.setUp(self)
- self._driver = self.NewWebDriver()
-
- def Debug(self):
- """Test method for experimentation.
-
- This method will not run automatically.
- """
- driver = self.NewWebDriver()
- page = settings.ContentSettingsPage.FromNavigation(driver)
- import pdb
- pdb.set_trace()
-
- def _GetGeolocationContentSettingsBehavior(self):
- """Get the Content Settings behavior for Geolocation.
-
- Returns:
- The exceptions behavior for the specified content type.
- The content type is the available content setting available.
- """
- behavior_key = self.GetPrefsInfo().Prefs(
- pyauto.kGeolocationDefaultContentSetting)
- behaviors_dict = {1: 'ALLOW', 2: 'BLOCK', 3: 'ASK'}
- self.assertTrue(
- behavior_key in behaviors_dict,
- msg=('Invalid default behavior key "%s" for "geolocation" content' %
- behavior_key))
- return behaviors_dict[behavior_key]
-
- def _VerifyContentExceptionUI(self, content_type, hostname_pattern, behavior,
- incognito=False):
- """Find hostname pattern and behavior within UI on content exceptions page.
-
- Args:
- content_type: The string content settings type to manage.
- hostname_pattern: The URL or pattern associated with the behavior.
- behavior: The exception to allow or block the hostname.
- incognito: Incognito list displayed on exceptions settings page.
- Default to False.
- """
- page = settings.ManageExceptionsPage.FromNavigation(
- self._driver, content_type)
- self.assertTrue(page.GetExceptions(incognito).has_key(hostname_pattern),
- msg=('No displayed host name matches pattern "%s"'
- % hostname_pattern))
- self.assertEqual(behavior, page.GetExceptions(incognito)[hostname_pattern],
- msg=('Displayed behavior "%s" does not match behavior "%s"'
- % (page.GetExceptions(incognito)[hostname_pattern],
- behavior)))
-
- def testLocationSettingOptionsUI(self):
- """Verify the location options setting UI.
-
- Set the options through the UI using webdriver and verify the settings in
- pyAuto.
- """
- page = settings.ContentSettingsPage.FromNavigation(self._driver)
- page.SetContentTypeOption(ContentTypes.GEOLOCATION, Behaviors.ALLOW)
- self.assertEqual(
- 1, self.GetPrefsInfo().Prefs(pyauto.kGeolocationDefaultContentSetting))
- page.SetContentTypeOption(ContentTypes.GEOLOCATION, Behaviors.BLOCK)
- self.assertEqual(
- 2, self.GetPrefsInfo().Prefs(pyauto.kGeolocationDefaultContentSetting))
- page.SetContentTypeOption(ContentTypes.GEOLOCATION, Behaviors.ASK)
- self.assertEqual(
- 3, self.GetPrefsInfo().Prefs(pyauto.kGeolocationDefaultContentSetting))
-
- def testBehaviorValueCorrectlyDisplayed(self):
- """Verify the set behavior value is correctly displayed."""
- # Block all sites.
- self.SetPrefs(pyauto.kGeolocationDefaultContentSetting, 2)
- self.assertEqual(
- self._GetGeolocationContentSettingsBehavior(), Behaviors.BLOCK.upper(),
- msg='The behavior was incorrectly set.')
- # Allow all sites.
- self.SetPrefs(pyauto.kGeolocationDefaultContentSetting, 1)
- self.assertEqual(
- self._GetGeolocationContentSettingsBehavior(), Behaviors.ALLOW.upper(),
- msg='The behavior was incorrectly set.')
- # Ask for permission when site wants to track.
- self.SetPrefs(pyauto.kGeolocationDefaultContentSetting, 3)
- self.assertEqual(
- self._GetGeolocationContentSettingsBehavior(), Behaviors.ASK.upper(),
- msg='The behavior was incorrectly set.')
-
- def testExceptionsEntryCorrectlyDisplayed(self):
- """Verify the exceptions line entry is correctly displayed in the UI."""
- geo_exception = (
- {'http://maps.google.com:80,http://maps.google.com:80':
- {'geolocation': 2}})
- self.SetPrefs(pyauto.kContentSettingsPatternPairs, geo_exception)
- self._VerifyContentExceptionUI(
- ContentTypes.GEOLOCATION, 'http://maps.google.com:80',
- Behaviors.BLOCK)
- geo_exception = (
- {'http://maps.google.com:80,http://maps.google.com:80':
- {'geolocation': 1}})
- self.SetPrefs(pyauto.kContentSettingsPatternPairs, geo_exception)
- self._VerifyContentExceptionUI(
- ContentTypes.GEOLOCATION, 'http://maps.google.com:80',
- Behaviors.ALLOW)
- geo_exception = (
- {'http://maps.google.com:80,http://maps.google.com:80':
- {'geolocation': 3}})
- self.SetPrefs(pyauto.kContentSettingsPatternPairs, geo_exception)
- self._VerifyContentExceptionUI(
- ContentTypes.GEOLOCATION, 'http://maps.google.com:80', Behaviors.ASK)
-
- def testAddNewExceptionUI(self):
- """Verify new exception added for hostname pattern and behavior in UI."""
- content_type = ContentTypes.PLUGINS
- page = settings.ManageExceptionsPage.FromNavigation(
- self._driver, content_type)
-
- pattern, behavior = ('bing.com', Behaviors.BLOCK)
- page.AddNewException(pattern, behavior)
- self.assertEqual(page.GetExceptions()[pattern], Behaviors.BLOCK,
- msg='The behavior "%s" was not added for pattern "%s"'
- % (behavior, pattern))
-
- def testChangeExceptionBehaviorUI(self):
- """Verify behavior for hostname pattern is changed in the UI."""
- content_type = ContentTypes.PLUGINS
- page = settings.ManageExceptionsPage.FromNavigation(
- self._driver, content_type)
-
- pattern, behavior = ('bing.com', Behaviors.BLOCK)
- page.AddNewException(pattern, behavior)
- new_behavior = Behaviors.ALLOW
- page.SetBehaviorForPattern(pattern, new_behavior)
- self.assertEqual(page.GetExceptions()[pattern], Behaviors.ALLOW,
- msg='The behavior for "%s" did not change: "%s"'
- % (pattern, behavior))
-
- def testDeleteExceptionUI(self):
- """Verify exception deleted for hostname pattern and behavior in the UI."""
- content_type = ContentTypes.PLUGINS
- page = settings.ManageExceptionsPage.FromNavigation(
- self._driver, content_type)
-
- pattern, behavior = ('bing.com', Behaviors.BLOCK)
- page.AddNewException(pattern, behavior)
- self.assertEqual(page.GetExceptions()[pattern], Behaviors.BLOCK,
- msg='The behavior "%s" was not added for pattern "%s"'
- % (behavior, pattern))
- page.DeleteException(pattern)
- self.assertEqual(page.GetExceptions().get(pattern, KeyError), KeyError,
- msg='Pattern "%s" was not deleted' % pattern)
-
- def testNoInitialLineEntryInUI(self):
- """Verify no initial line entry is displayed in UI."""
- # Ask for permission when site wants to track.
- self.SetPrefs(pyauto.kGeolocationDefaultContentSetting, 3)
- self.assertEqual(
- 3, self.GetPrefsInfo().Prefs(pyauto.kGeolocationDefaultContentSetting))
- page = settings.ManageExceptionsPage.FromNavigation(
- self._driver, ContentTypes.GEOLOCATION)
- self.assertEqual(0, len(page.GetExceptions()))
-
- def testCorrectCookiesSessionInUI(self):
- """Verify exceptions for cookies in UI list entry."""
- # Block cookies for for a session for google.com.
- self.SetPrefs(pyauto.kContentSettingsPatternPairs,
- {'http://google.com:80': {'cookies': 2}})
- self._VerifyContentExceptionUI(
- ContentTypes.COOKIES, 'http://google.com:80', Behaviors.BLOCK)
-
- def testInitialLineEntryInIncognitoUI(self):
- """Verify initial line entry is displayed in Incognito UI."""
- self.RunCommand(pyauto.IDC_NEW_INCOGNITO_WINDOW) # Display incognito list.
- page = settings.ManageExceptionsPage.FromNavigation(
- self._driver, ContentTypes.PLUGINS)
- self.assertEqual(1, len(page.GetExceptions(incognito=True)))
-
- def testIncognitoExceptionsEntryCorrectlyDisplayed(self):
- """Verify exceptions entry is correctly displayed in the incognito UI."""
- self.RunCommand(pyauto.IDC_NEW_INCOGNITO_WINDOW) # Display incognito list.
- page = settings.ManageExceptionsPage.FromNavigation(
- self._driver, ContentTypes.PLUGINS)
- pattern, behavior = ('http://maps.google.com:80', Behaviors.BLOCK)
- page.AddNewException(pattern, behavior, incognito=True)
- self._VerifyContentExceptionUI(
- ContentTypes.PLUGINS, 'http://maps.google.com:80',
- Behaviors.BLOCK, incognito=True)
-
- def testSetCookieAndDeleteInContentSettings(self):
- """Verify a cookie can be deleted in the Content Settings UI."""
- # Create a cookie.
- cookie_dict = {
- 'name': 'test_cookie',
- 'value': 'test_value',
- 'expiry': time.time() + 30,
- }
- site = '127.0.0.1'
- self.NavigateToURL(self.GetHttpURLForDataPath('google', 'google.html'))
- self._driver.add_cookie(cookie_dict)
- page = settings.CookiesAndSiteDataSettings.FromNavigation(self._driver)
- page.DeleteSiteData(site)
- self.assertTrue(site not in page.GetSiteNameList(),
- 'Site "%s" was not deleted.' % site)
-
- def testRemoveMailProtocolHandler(self):
- """Verify the mail protocol handler is added and removed successfully."""
- url = self.GetHttpURLForDataPath('settings', 'protocol_handler.html')
- self.NavigateToURL(url)
- # Returns a dictionary with the mail handler that was asked for
- # registration.
- asked_handler_dict = self._driver.execute_script(
- 'return registerMailClient()')
- self.PerformActionOnInfobar(
- 'accept', infobar_index=test_utils.WaitForInfobarTypeAndGetIndex(
- self, self.INFOBAR_TYPE))
- self._driver.find_element_by_id('test_mail_protocol').click()
-
- protocol_handlers_list = (
- self.GetPrefsInfo().Prefs(pyauto.kRegisteredProtocolHandlers))
- registered_mail_handler = {}
- for handler_dict in protocol_handlers_list:
- if (handler_dict['protocol'] == 'mailto' and
- handler_dict['url'] == asked_handler_dict['url'] and
- handler_dict['title'] == asked_handler_dict['title'] and
- handler_dict.get('default')):
- registered_mail_handler = handler_dict
- break
- # Verify the mail handler is registered as asked.
- self.assertNotEqual(
- registered_mail_handler, {},
- msg='Mail protocol handler was not registered correctly.')
- # Verify the registered mail handler works as expected.
- self.assertTrue(
- self._driver.execute_script(
- 'return doesQueryConformsToProtocol("%s", "%s")'
- % (asked_handler_dict['query_key'],
- asked_handler_dict['query_value'])),
- msg='Mail protocol did not register correctly.')
-
- self._driver.get('chrome://settings-frame/handlers')
- # There are 3 DIVs in a handler entry. The last one acts as a remove button.
- # The remove button is also equivalent to setting the site to NONE.
- self._driver.find_element_by_id('handlers-list').\
- find_element_by_xpath('.//div[@role="listitem"]').\
- find_element_by_xpath('.//div[@class="handlers-site-column"]').\
- find_element_by_xpath('.//option[@value="-1"]').click()
-
- self._driver.get(url)
- self._driver.find_element_by_id('test_mail_protocol').click()
- self.assertEqual(url, self._driver.current_url,
- msg='Mail protocol still registered.')
-
-class BasicSettingsUITest(pyauto.PyUITest):
- """Testcases for uber page basic settings UI."""
-
- def setUp(self):
- pyauto.PyUITest.setUp(self)
- self._driver = self.NewWebDriver()
-
- def Debug(self):
- """chrome://plugins test debug method.
-
- This method will not run automatically.
- """
- driver = self.NewWebDriver()
- page = settings.BasicSettingsPage.FromNavigation(driver)
- import pdb
- pdb.set_trace()
-
- def testOnStartupSettings(self):
- """Verify user can set startup options."""
- page = settings.BasicSettingsPage.FromNavigation(self._driver)
- page.SetOnStartupOptions(RestoreOnStartupType.NEW_TAB_PAGE)
- self.assertEqual(RestoreOnStartupType.NEW_TAB_PAGE,
- self.GetPrefsInfo().Prefs(pyauto.kRestoreOnStartup))
- page.SetOnStartupOptions(RestoreOnStartupType.RESTORE_SESSION)
- self.assertEqual(RestoreOnStartupType.RESTORE_SESSION,
- self.GetPrefsInfo().Prefs(pyauto.kRestoreOnStartup))
- page.SetOnStartupOptions(RestoreOnStartupType.RESTORE_URLS)
- self.assertEqual(RestoreOnStartupType.RESTORE_URLS,
- self.GetPrefsInfo().Prefs(pyauto.kRestoreOnStartup))
-
- def testSetStartupPages(self):
- """Verify user can add urls for startup pages."""
- page = settings.BasicSettingsPage.FromNavigation(self._driver)
- for url in ['www.google.com', 'http://www.amazon.com', 'ebay.com']:
- page.AddStartupPage(url)
- self.assertEqual(RestoreOnStartupType.RESTORE_URLS,
- self.GetPrefsInfo().Prefs(pyauto.kRestoreOnStartup))
- startup_urls = self.GetPrefsInfo().Prefs(pyauto.kURLsToRestoreOnStartup)
- self.assertEqual(startup_urls[0], 'http://www.google.com/')
- self.assertEqual(startup_urls[1], 'http://www.amazon.com/')
- self.assertEqual(startup_urls[2], 'http://ebay.com/')
-
- def testUseCurrentPagesForStartup(self):
- """Verify user can start up browser using current pages."""
- page = settings.BasicSettingsPage.FromNavigation(self._driver)
- self.OpenNewBrowserWindow(True)
- url1 = self.GetHttpURLForDataPath('title2.html')
- url2 = self.GetHttpURLForDataPath('title3.html')
- self.NavigateToURL(url1, 1, 0)
- self.AppendTab(pyauto.GURL(url2), 1)
- title_list = ['Title Of Awesomeness',
- 'Title Of More Awesomeness']
- page.UseCurrentPageForStartup(title_list)
- page.VerifyStartupURLs(title_list)
- self.assertEqual(RestoreOnStartupType.RESTORE_URLS,
- self.GetPrefsInfo().Prefs(pyauto.kRestoreOnStartup))
- startup_urls = self.GetPrefsInfo().Prefs(pyauto.kURLsToRestoreOnStartup)
- self.assertEqual(len(startup_urls), 3)
- self.assertEqual(startup_urls[1], url1)
- self.assertEqual(startup_urls[2], url2)
-
- def testCancelStartupURLSetting(self):
- """Verify canceled start up URLs settings are not saved."""
- page = settings.BasicSettingsPage.FromNavigation(self._driver)
- for url in ['www.google.com', 'http://www.amazon.com']:
- page.CancelStartupURLSetting(url)
- startup_urls = self.GetPrefsInfo().Prefs(pyauto.kURLsToRestoreOnStartup)
- self.assertEqual(len(startup_urls), 0)
-
-
-if __name__ == '__main__':
- pyauto_functional.Main()
« no previous file with comments | « chrome/test/functional/prefs.py ('k') | chrome/test/functional/pyauto_functional.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698