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

Side by Side Diff: chrome/test/functional/about_plugins_ui.py

Issue 222873002: Remove pyauto tests. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: sync Created 6 years, 8 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 unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « chrome/test/functional/PYAUTO_TESTS ('k') | chrome/test/functional/ap_lab/ap_configurator.py » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 #!/usr/bin/env python
2 # Copyright (c) 2012 The Chromium Authors. All rights reserved.
3 # Use of this source code is governed by a BSD-style license that can be
4 # found in the LICENSE file.
5
6 import os
7 import re
8
9 import pyauto_functional # Must be imported before pyauto
10 import pyauto
11 import pyauto_utils
12
13
14 class AboutPluginsUITest(pyauto.PyUITest):
15 """Testcase for chrome://plugins UI."""
16
17 def testAboutPluginDetailInfo(self):
18 """Verify chrome://plugins page shows plugin details."""
19 self.NavigateToURL('chrome://plugins/')
20 driver = self.NewWebDriver()
21 detail_link = driver.find_element_by_id('details-link')
22 self.assertTrue(self.WaitUntil(lambda: detail_link.is_displayed()),
23 msg='Details link could not be found.')
24 detail_link.click()
25 # Verify that detail info for Remote Viewer plugin shows up.
26 # Remote Viewer plugin is expected to be present on all platforms.
27 self.assertTrue(self.WaitUntil(lambda: len(driver.find_elements_by_xpath(
28 '//*[@jscontent="path"][text()="internal-remoting-viewer"]'))))
29
30
31 class ChromeAboutPluginsUITest(pyauto.PyUITest):
32 """Testcase for official build only plugins in chrome://plugins UI."""
33
34 def Debug(self):
35 """chrome://plugins test debug method.
36
37 This method will not run automatically.
38 """
39 self.NavigateToURL('chrome://plugins/')
40 driver = self.NewWebDriver()
41 import pdb
42 pdb.set_trace()
43
44 def _IsEnabled(self, driver, plugin_name):
45 """Checks if plugin is enabled.
46
47 Args:
48 driver: A Chrome driver object.
49 plugin_name: Plugin name to verify.
50
51 Returns:
52 True, if plugin is enabled, or False otherwise.
53 """
54 check_plugin_enabled_js = 'return navigator.plugins["%s"] != undefined' % \
55 plugin_name
56 return driver.execute_script(check_plugin_enabled_js)
57
58 def _ExpandDetailInfoLink(self, driver):
59 """Expand detail info link.
60
61 Args:
62 driver: A Chrome driver object.
63 """
64 detail_link = driver.find_element_by_id('details-link')
65 self.assertTrue(self.WaitUntil(lambda: detail_link.is_displayed()),
66 msg='Details link could not be found.')
67 detail_link.click()
68
69 def _OverridePluginPageAnimation(self, driver):
70 """Override the animation for expanding detail info to make sure element
71 remain at the same location where web driver found it.
72
73 Args:
74 driver: A Chrome driver object.
75 """
76 override_animation_style_js = """
77 style = document.createElement('style');
78 style.innerHTML = "* { -webkit-transition: all 0s ease-in !important}";
79 document.head.appendChild(style);
80 """
81 driver.execute_script(override_animation_style_js)
82
83 def testAboutPluginEnableAndDisablePDFPlugin(self):
84 """Verify enable and disable pdf plugins from about:plugins page."""
85 self.NavigateToURL('chrome://plugins/')
86 driver = self.NewWebDriver()
87
88 self._OverridePluginPageAnimation(driver)
89 self._ExpandDetailInfoLink(driver)
90
91 pdf_disable_path = '//*[@class="plugin-name"][text()="Chrome PDF Viewer"' \
92 ']//ancestor::*[@class="plugin-text"]//a[text()="Disable"]'
93 pdf_enable_path = '//*[@class="plugin-name"][text()="Chrome PDF Viewer"' \
94 ']//ancestor::*[@class="plugin-text"]//a[text()="Enable"]'
95
96 # Confirm Chrome PDF Viewer plugin is found and find disable PDF link.
97 pdf_disable_link = pyauto_utils.WaitForDomElement(self, driver,
98 pdf_disable_path)
99
100 # Disable PDF viewer plugin in about:plugins.
101 pdf_disable_link.click()
102 self.assertTrue(self.WaitUntil(lambda: not
103 self._IsEnabled(driver, 'Chrome PDF Viewer')))
104
105 # Re-enable PDF viewer plugin.
106 pdf_enable_link = driver.find_element_by_xpath(pdf_enable_path)
107 pdf_enable_link.click()
108 self.assertTrue(self.WaitUntil(lambda:
109 self._IsEnabled(driver, 'Chrome PDF Viewer')))
110
111 def testEnableAndDisableFlashPlugin(self):
112 """Verify enable and disable flash plugins from about:plugins page."""
113 self.NavigateToURL('chrome://plugins/')
114 driver = self.NewWebDriver()
115
116 self._OverridePluginPageAnimation(driver)
117 self._ExpandDetailInfoLink(driver)
118 flash_plugins_elem = driver.find_element_by_xpath(
119 '//*[@jscontent="name"][text()="Flash"]//ancestor' \
120 '::*[@class="plugin-text"]')
121
122 # Disable flash plugin from flash detail info.
123 flash_disable_link = flash_plugins_elem.find_element_by_xpath(
124 './/a[text()="Disable"]')
125 flash_disable_link.click()
126 self.assertTrue(self.WaitUntil(lambda: not
127 self._IsEnabled(driver, 'Shockwave Flash')))
128
129 # Re-enable Flash plugin from flash detail info.
130 flash_enable_link = flash_plugins_elem.find_element_by_xpath(
131 './/a[text()="Enable"]')
132 flash_enable_link.click()
133 self.assertTrue(self.WaitUntil(lambda:
134 self._IsEnabled(driver, 'Shockwave Flash')))
135
136
137 if __name__ == '__main__':
138 pyauto_functional.Main()
OLDNEW
« no previous file with comments | « chrome/test/functional/PYAUTO_TESTS ('k') | chrome/test/functional/ap_lab/ap_configurator.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698