QGIS/python/ext-libs/nose2/tests/unit/test_plugin_api.py
2016-02-06 03:12:25 +01:00

35 lines
1.1 KiB
Python

from nose2 import events, session
from nose2.tests._common import TestCase
class Example(events.Plugin):
commandLineSwitch = ('X', 'xxx', 'triple x')
def testOutcome(self, event):
pass
class TestPluginApi(TestCase):
def setUp(self):
self.session = session.Session()
self.plug = Example(session=self.session)
super(TestCase, self).setUp()
def test_add_option_adds_option(self):
helpt = self.session.argparse.format_help()
assert '-X, --xxx' in helpt, \
"commandLineSwitch arg not found in help text: %s" % helpt
def test_short_opt_registers_plugin(self):
args, argv = self.session.argparse.parse_known_args(['-X'])
assert self.plug in self.session.plugins
assert self.plug in self.session.hooks.testOutcome.plugins, \
"short opt did not register plugin"
def test_long_opt_registers_plugin(self):
args, argv = self.session.argparse.parse_known_args(['--xxx'])
assert self.plug in self.session.plugins
assert self.plug in self.session.hooks.testOutcome.plugins, \
"long opt did not register plugin"