From b73cd69caebe5d14a11acb8fea83a7c1c23de500 Mon Sep 17 00:00:00 2001 From: astokes Date: Fri, 22 Jan 2010 19:49:52 +0000 Subject: - unittest for plugin import failure git-svn-id: svn+ssh://svn.fedorahosted.org/svn/sos/trunk@698 ef72aa8b-4018-0410-8976-d6e080ef94d8 --- src/tests/test_plugin_syntax.py | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 src/tests/test_plugin_syntax.py (limited to 'src/tests/test_plugin_syntax.py') diff --git a/src/tests/test_plugin_syntax.py b/src/tests/test_plugin_syntax.py new file mode 100644 index 00000000..573fa8fe --- /dev/null +++ b/src/tests/test_plugin_syntax.py @@ -0,0 +1,34 @@ +import unittest +import sys +import os +import sos.policyredhat +from sos.helpers import * + +class testPluginSanity(unittest.TestCase): + """ tests plugins don't fail due to indentation errors + etc. + """ + def setUp(self): + self.policy = sos.policyredhat.SosPolicy() + # build plugins list + paths = sys.path + for path in paths: + if path.strip()[-len("site-packages"):] == "site-packages" \ + and os.path.isdir(path + "/sos/plugins"): + pluginpath = path + "/sos/plugins" + self.plugins = os.listdir(pluginpath) + self.plugins.sort() + + def testPluginLoad(self): + for plug in self.plugins: + plugbase = plug[:-3] + if not plug[-3:] == '.py' or plugbase == "__init__": + continue + try: + loadPlugin = importPlugin("sos.plugins." + plugbase, plugbase) + except: + self.fail("Plugin exception on %s" % (plugbase,)) + +if __name__=="__main__": + unittest.main() + -- cgit