diff options
author | rohitbm@google.com <rohitbm@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-02-07 18:21:56 +0000 |
---|---|---|
committer | rohitbm@google.com <rohitbm@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-02-07 18:21:56 +0000 |
commit | 6a6255cf87148f52d73816ba3007a573fb275fc4 (patch) | |
tree | 411863171dcb287a2be8021dcad2e2ce33840e98 /chrome | |
parent | 07ec3764352de9517a48a8d6817bb40e467d9777 (diff) | |
download | chromium_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.txt | 15 | ||||
-rw-r--r-- | chrome/test/functional/PYAUTO_TESTS | 1 | ||||
-rw-r--r-- | chrome/test/functional/plugins_check.py | 51 |
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() |