| Index: chrome/test/functional/about_plugins_ui.py
|
| ===================================================================
|
| --- chrome/test/functional/about_plugins_ui.py (revision 261231)
|
| +++ chrome/test/functional/about_plugins_ui.py (working copy)
|
| @@ -1,138 +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 os
|
| -import re
|
| -
|
| -import pyauto_functional # Must be imported before pyauto
|
| -import pyauto
|
| -import pyauto_utils
|
| -
|
| -
|
| -class AboutPluginsUITest(pyauto.PyUITest):
|
| - """Testcase for chrome://plugins UI."""
|
| -
|
| - def testAboutPluginDetailInfo(self):
|
| - """Verify chrome://plugins page shows plugin details."""
|
| - self.NavigateToURL('chrome://plugins/')
|
| - driver = self.NewWebDriver()
|
| - detail_link = driver.find_element_by_id('details-link')
|
| - self.assertTrue(self.WaitUntil(lambda: detail_link.is_displayed()),
|
| - msg='Details link could not be found.')
|
| - detail_link.click()
|
| - # Verify that detail info for Remote Viewer plugin shows up.
|
| - # Remote Viewer plugin is expected to be present on all platforms.
|
| - self.assertTrue(self.WaitUntil(lambda: len(driver.find_elements_by_xpath(
|
| - '//*[@jscontent="path"][text()="internal-remoting-viewer"]'))))
|
| -
|
| -
|
| -class ChromeAboutPluginsUITest(pyauto.PyUITest):
|
| - """Testcase for official build only plugins in chrome://plugins UI."""
|
| -
|
| - def Debug(self):
|
| - """chrome://plugins test debug method.
|
| -
|
| - This method will not run automatically.
|
| - """
|
| - self.NavigateToURL('chrome://plugins/')
|
| - driver = self.NewWebDriver()
|
| - import pdb
|
| - pdb.set_trace()
|
| -
|
| - def _IsEnabled(self, driver, plugin_name):
|
| - """Checks if plugin is enabled.
|
| -
|
| - Args:
|
| - driver: A Chrome driver object.
|
| - plugin_name: Plugin name to verify.
|
| -
|
| - Returns:
|
| - True, if plugin is enabled, or False otherwise.
|
| - """
|
| - check_plugin_enabled_js = 'return navigator.plugins["%s"] != undefined' % \
|
| - plugin_name
|
| - return driver.execute_script(check_plugin_enabled_js)
|
| -
|
| - def _ExpandDetailInfoLink(self, driver):
|
| - """Expand detail info link.
|
| -
|
| - Args:
|
| - driver: A Chrome driver object.
|
| - """
|
| - detail_link = driver.find_element_by_id('details-link')
|
| - self.assertTrue(self.WaitUntil(lambda: detail_link.is_displayed()),
|
| - msg='Details link could not be found.')
|
| - detail_link.click()
|
| -
|
| - def _OverridePluginPageAnimation(self, driver):
|
| - """Override the animation for expanding detail info to make sure element
|
| - remain at the same location where web driver found it.
|
| -
|
| - Args:
|
| - driver: A Chrome driver object.
|
| - """
|
| - override_animation_style_js = """
|
| - style = document.createElement('style');
|
| - style.innerHTML = "* { -webkit-transition: all 0s ease-in !important}";
|
| - document.head.appendChild(style);
|
| - """
|
| - driver.execute_script(override_animation_style_js)
|
| -
|
| - def testAboutPluginEnableAndDisablePDFPlugin(self):
|
| - """Verify enable and disable pdf plugins from about:plugins page."""
|
| - self.NavigateToURL('chrome://plugins/')
|
| - driver = self.NewWebDriver()
|
| -
|
| - self._OverridePluginPageAnimation(driver)
|
| - self._ExpandDetailInfoLink(driver)
|
| -
|
| - pdf_disable_path = '//*[@class="plugin-name"][text()="Chrome PDF Viewer"' \
|
| - ']//ancestor::*[@class="plugin-text"]//a[text()="Disable"]'
|
| - pdf_enable_path = '//*[@class="plugin-name"][text()="Chrome PDF Viewer"' \
|
| - ']//ancestor::*[@class="plugin-text"]//a[text()="Enable"]'
|
| -
|
| - # Confirm Chrome PDF Viewer plugin is found and find disable PDF link.
|
| - pdf_disable_link = pyauto_utils.WaitForDomElement(self, driver,
|
| - pdf_disable_path)
|
| -
|
| - # Disable PDF viewer plugin in about:plugins.
|
| - pdf_disable_link.click()
|
| - self.assertTrue(self.WaitUntil(lambda: not
|
| - self._IsEnabled(driver, 'Chrome PDF Viewer')))
|
| -
|
| - # Re-enable PDF viewer plugin.
|
| - pdf_enable_link = driver.find_element_by_xpath(pdf_enable_path)
|
| - pdf_enable_link.click()
|
| - self.assertTrue(self.WaitUntil(lambda:
|
| - self._IsEnabled(driver, 'Chrome PDF Viewer')))
|
| -
|
| - def testEnableAndDisableFlashPlugin(self):
|
| - """Verify enable and disable flash plugins from about:plugins page."""
|
| - self.NavigateToURL('chrome://plugins/')
|
| - driver = self.NewWebDriver()
|
| -
|
| - self._OverridePluginPageAnimation(driver)
|
| - self._ExpandDetailInfoLink(driver)
|
| - flash_plugins_elem = driver.find_element_by_xpath(
|
| - '//*[@jscontent="name"][text()="Flash"]//ancestor' \
|
| - '::*[@class="plugin-text"]')
|
| -
|
| - # Disable flash plugin from flash detail info.
|
| - flash_disable_link = flash_plugins_elem.find_element_by_xpath(
|
| - './/a[text()="Disable"]')
|
| - flash_disable_link.click()
|
| - self.assertTrue(self.WaitUntil(lambda: not
|
| - self._IsEnabled(driver, 'Shockwave Flash')))
|
| -
|
| - # Re-enable Flash plugin from flash detail info.
|
| - flash_enable_link = flash_plugins_elem.find_element_by_xpath(
|
| - './/a[text()="Enable"]')
|
| - flash_enable_link.click()
|
| - self.assertTrue(self.WaitUntil(lambda:
|
| - self._IsEnabled(driver, 'Shockwave Flash')))
|
| -
|
| -
|
| -if __name__ == '__main__':
|
| - pyauto_functional.Main()
|
|
|