awips2/pythonPackages/nose/functional_tests/test_plugins.py
root 9f19e3f712 Initial revision of AWIPS2 11.9.0-7p5
Former-commit-id: 64fa9254b946eae7e61bbc3f513b7c3696c4f54f
2012-01-06 08:55:05 -06:00

71 lines
2.9 KiB
Python
Executable file

import os
import sys
import unittest
from nose.config import Config
from nose.core import TestProgram
here = os.path.abspath(os.path.dirname(__file__))
support = os.path.join(here, 'support')
units = os.path.normpath(os.path.join(here, '..', 'unit_tests'))
if units not in sys.path:
sys.path.insert(0, units)
from mock import RecordingPluginManager
class TestPluginCalls(unittest.TestCase):
"""
Tests how plugins are called throughout a standard test run
"""
def test_plugin_calls_package1(self):
wdir = os.path.join(support, 'package1')
man = RecordingPluginManager()
conf = Config(plugins=man, stream=sys.stdout)
t = TestProgram(defaultTest=wdir, config=conf,
argv=['test_plugin_calls_package1'], exit=False)
print man.calls()
assert man.called
self.assertEqual(
man.calls(),
['loadPlugins', 'addOptions', 'configure', 'begin',
'prepareTestLoader', 'loadTestsFromNames', 'loadTestsFromName',
'prepareTestRunner', 'prepareTest', 'setOutputStream',
'prepareTestResult', 'beforeDirectory', 'wantFile',
'wantDirectory', 'beforeContext', 'beforeImport',
'afterImport', 'wantModule', 'wantClass', 'wantFunction',
'makeTest', 'wantMethod', 'loadTestsFromTestClass',
'loadTestsFromTestCase', 'loadTestsFromModule', 'startContext',
'beforeTest', 'prepareTestCase', 'startTest', 'addSuccess',
'stopTest', 'afterTest', 'stopContext', 'afterContext',
'loadTestsFromDir', 'afterDirectory',
'report', 'finalize'])
def test_plugin_calls_package1_versbose(self):
wdir = os.path.join(support, 'package1')
man = RecordingPluginManager()
conf = Config(plugins=man, stream=sys.stdout)
t = TestProgram(defaultTest=wdir, config=conf,
argv=['test_plugin_calls_package1', '-v'], exit=False)
print man.calls()
assert man.called
self.assertEqual(
man.calls(),
['loadPlugins', 'addOptions', 'configure', 'begin',
'prepareTestLoader', 'loadTestsFromNames', 'loadTestsFromName',
'prepareTestRunner', 'prepareTest', 'setOutputStream',
'prepareTestResult', 'beforeDirectory', 'wantFile',
'wantDirectory', 'beforeContext', 'beforeImport',
'afterImport', 'wantModule', 'wantClass', 'wantFunction',
'makeTest', 'wantMethod', 'loadTestsFromTestClass',
'loadTestsFromTestCase', 'loadTestsFromModule', 'startContext',
'beforeTest', 'prepareTestCase', 'startTest', 'describeTest',
'addSuccess', 'stopTest', 'afterTest', 'stopContext', 'testName',
'afterContext', 'loadTestsFromDir', 'afterDirectory',
'report', 'finalize'])
if __name__ == '__main__':
unittest.main()