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

Unified Diff: functional/plugins.py

Issue 6015010: Adding tests for plugins section in content settings.... (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/chrome/test/
Patch Set: '' Created 10 years 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 | « no previous file | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: functional/plugins.py
===================================================================
--- functional/plugins.py (revision 70178)
+++ functional/plugins.py (working copy)
@@ -139,6 +139,65 @@
re.search(plugin_name, x['name'])])
self.assertTrue(self._IsEnabled(plugin_name), plugin_name)
+ def testBlockAllPlugins(self):
+ """Verify that all the plugins are blocked."""
Nirnimesh 2011/01/07 22:44:23 s/are/can be/
Nirnimesh 2011/01/07 22:44:23 Add: Verifies by checking that flash plugin was bl
sunandt 2011/01/13 00:29:34 Done.
sunandt 2011/01/13 00:29:34 Done.
+ flash_url = self.GetFileURLForPath(os.path.join(self.DataDir(),
Nirnimesh 2011/01/07 22:44:23 it's ok to move all args from self.DataDir() to ne
sunandt 2011/01/13 00:29:34 Done.
+ 'plugin', 'flash-clicktoplay.html'))
+ self.NavigateToURL(flash_url)
+ pid = self._GetPluginPID('Shockwave Flash')
Nirnimesh 2011/01/07 22:44:23 s/pid/flash_pid/
sunandt 2011/01/13 00:29:34 Done.
+ self.assertTrue(pid, msg='No plugin process for Shockwave Flash')
+ self.Kill(pid)
Nirnimesh 2011/01/07 22:44:23 Is it necessary to Kill?
sunandt 2011/01/13 00:29:34 Yes. Because the flash process is not killed immed
+ self.assertTrue(self.WaitUntil(
+ lambda: self._GetPluginPID('Shockwave Flash') is None),
+ msg='Expected Shockwave Flash plugin to die after killing')
+ # Set the preference to block all plugins.
+ self.SetPrefs(pyauto.kDefaultContentSettings, {'plugins': 2})
+
+ self.GetBrowserWindow(0).GetTab(0).Reload()
+ self.assertFalse(self._GetPluginPID('Shockwave Flash'),
+ msg='Plug-in not blocked.')
+
+ def testAllowPluginException(self):
+ """Verify that plugins can be allowed on a domain by adding
+ an exception(s)."""
+ # Set the preference to block all plugins.
+ self.SetPrefs(pyauto.kDefaultContentSettings, {'plugins': 2})
+
+ flash_url = self.GetFileURLForPath(os.path.join(self.DataDir(),
Nirnimesh 2011/01/07 22:44:23 repeat
sunandt 2011/01/13 00:29:34 Done.
+ 'plugin', 'flash-clicktoplay.html'))
+ self.NavigateToURL(flash_url)
+ # Check that plugins are blocked.
+ self.assertFalse(self._GetPluginPID('Shockwave Flash'),
+ msg='Plug-in not blocked.')
+
+ # Add an exception to allow plugins on youtube.com.
+ self.SetPrefs(pyauto.kContentSettingsPatterns,
+ {'[*.]youtube.com': { 'plugins': 1}})
+ self.AppendTab(pyauto.GURL('http://www.youtube.com'))
+ self.assertTrue(self._GetPluginPID('Shockwave Flash'),
+ msg='No plugin process for Shockwave Flash')
+
+ def testBlockPluginException(self):
+ """Verify that plugins can be blocked on a domain by adding
+ an exception(s)."""
+ flash_url = self.GetFileURLForPath(os.path.join(self.DataDir(),
Nirnimesh 2011/01/07 22:44:23 repeat
sunandt 2011/01/13 00:29:34 Done.
+ 'plugin', 'flash-clicktoplay.html'))
+ self.NavigateToURL(flash_url)
+ pid = self._GetPluginPID('Shockwave Flash')
+ self.assertTrue(pid, msg='No plugin process for Shockwave Flash')
+ self.Kill(pid)
+ self.assertTrue(self.WaitUntil(
+ lambda: self._GetPluginPID('Shockwave Flash') is None),
+ msg='Expected Shockwave Flash plugin to die after killing')
+
+ # Add an exception to block plugins on youtube.com.
+ self.SetPrefs(pyauto.kContentSettingsPatterns,
+ {'[*.]youtube.com': { 'plugins': 2}})
+ self.AppendTab(pyauto.GURL('http://www.youtube.com'))
+ self.assertFalse(self._GetPluginPID('Shockwave Flash'),
+ msg='Plug-in not blocked.')
+
+
if __name__ == '__main__':
pyauto_functional.Main()
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698