summaryrefslogtreecommitdiffstats
path: root/chrome
diff options
context:
space:
mode:
authorrohitbm@google.com <rohitbm@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2011-02-07 18:21:56 +0000
committerrohitbm@google.com <rohitbm@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2011-02-07 18:21:56 +0000
commit6a6255cf87148f52d73816ba3007a573fb275fc4 (patch)
tree411863171dcb287a2be8021dcad2e2ce33840e98 /chrome
parent07ec3764352de9517a48a8d6817bb40e467d9777 (diff)
downloadchromium_src-6a6255cf87148f52d73816ba3007a573fb275fc4.zip
chromium_src-6a6255cf87148f52d73816ba3007a573fb275fc4.tar.gz
chromium_src-6a6255cf87148f52d73816ba3007a573fb275fc4.tar.bz2
Adding plugins compare test
Review URL: http://codereview.chromium.org/6349039 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@74001 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome')
-rw-r--r--chrome/test/data/mac_plugins_list.txt15
-rw-r--r--chrome/test/functional/PYAUTO_TESTS1
-rw-r--r--chrome/test/functional/plugins_check.py51
3 files changed, 67 insertions, 0 deletions
diff --git a/chrome/test/data/mac_plugins_list.txt b/chrome/test/data/mac_plugins_list.txt
new file mode 100644
index 0000000..58e5f5c
--- /dev/null
+++ b/chrome/test/data/mac_plugins_list.txt
@@ -0,0 +1,15 @@
+# List of Mac Chrome plugins to verify plugins' version and state.
+# To add new plugin, add new plugin with following version in the list,
+# {u'name':'<Plugin Name>', u'enabled':<True/False>, u'version':u'<VERSION>'}
+# Used by: chrome/test/functional/plugins_check.py
+[
+ {u'name':'Shockwave Flash', u'enabled':'True', u'version':u'10.2.154.9'},
+ {u'name':'Chrome PDF Viewer', u'enabled':'True', u'version':u''},
+ {u'name':'Flip4Mac Windows Media Plugin 2.3.6 ', u'enabled':'True', u'version':u'2.3.6.5'},
+ {u'name':'Java Plug-In 2 for NPAPI Browsers', u'enabled':'True', u'version':u'13.3.0'},
+ {u'name':'QuickTime Plug-in 7.6.6', u'enabled':'True', u'version':u'7.6.6'},
+ {u'name':'Silverlight Plug-In', u'enabled':'True', u'version':u'4.0.51204.0'},
+ {u'name':'Default Plug-in', u'enabled':'True', u'version':u'1'},
+ {u'name':'Shockwave Flash', u'enabled':'True', u'version':u'10.1.102.64'},
+ {u'name':'Chrome NaCl', u'enabled':'True', u'version':u''},
+]
diff --git a/chrome/test/functional/PYAUTO_TESTS b/chrome/test/functional/PYAUTO_TESTS
index 4a4fdc7..6a36bdd 100644
--- a/chrome/test/functional/PYAUTO_TESTS
+++ b/chrome/test/functional/PYAUTO_TESTS
@@ -67,6 +67,7 @@
'pdf',
'plugins',
'-plugins.PluginsTest.testBlockPluginException', # crbug.com/71617
+ 'plugins_check',
'popups',
'-popups', # Flaky. crbug.com/70659
'prefs',
diff --git a/chrome/test/functional/plugins_check.py b/chrome/test/functional/plugins_check.py
new file mode 100644
index 0000000..cbd0f1d
--- /dev/null
+++ b/chrome/test/functional/plugins_check.py
@@ -0,0 +1,51 @@
+#!/usr/bin/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 logging
+import os
+import sys
+
+import pyauto_functional # Must be imported before pyauto
+import pyauto
+
+
+class PluginsCheck(pyauto.PyUITest):
+ """TestCase for Plugins."""
+
+ def _ReadPluginsList(self):
+ """Read test plugins list from a file based on the test platform
+
+ File contains list of plugins like,
+ [
+ {u'name':'Shockwave Flash', u'enabled':True, u'version':u'10.2.154.9'}
+ {u'name':'Chrome PDF Viewer', u'enabled':True, u'version':u''}
+ ...
+ ]
+ """
+ if self.IsMac():
+ file_path = os.path.join(self.DataDir(), 'mac_plugins_list.txt')
+ return self.EvalDataFrom(file_path)
+
+ def testPluginsStates(self):
+ """Verify plugins' versions and states."""
+ if not self.IsMac():
+ # TODO(rohitbm)
+ # Need to find plugins list on Windows/Linux machines.
+ return
+ default_plugins_list = self._ReadPluginsList();
+ for plugin in self.GetPluginsInfo().Plugins():
+ test_plugin = [x['name'] for x in default_plugins_list \
+ if x['version'] == plugin['version'] and \
+ x['enabled'] == str(plugin['enabled']) and \
+ x['name'] == plugin['name']]
+ plugin_info = '[ NAME : %s, VERSION: %s, ENABLED: %s]' % \
+ (plugin['name'], plugin['version'], str(plugin['enabled']))
+ logging.debug(plugin_info)
+ self.assertTrue(test_plugin, '%s - Failed to match with plugins'
+ ' available in the default list' % plugin_info)
+
+
+if __name__ == '__main__':
+ pyauto_functional.Main()