2016-02-06 03:12:25 +01:00

28 lines
960 B
Python

from nose2.tests._common import FunctionalTestCase
class TestPluggableTestProgram(FunctionalTestCase):
def test_run_in_empty_dir_succeeds(self):
proc = self.runIn('scenario/no_tests')
stdout, stderr = proc.communicate()
self.assertEqual(proc.poll(), 0, stderr)
def test_extra_hooks(self):
class Check(object):
ran = False
def startTestRun(self, event):
self.ran = True
check = Check()
proc = self.runIn('scenario/no_tests',
extraHooks=[('startTestRun', check)])
stdout, stderr = proc.communicate()
self.assertEqual(proc.poll(), 0, stderr)
assert check.ran, "Extra hook did not execute"
def test_run_in_module_from_its_main(self):
proc = self.runModuleAsMain('scenario/one_test/tests.py')
self.assertTestRunOutputMatches(proc, stderr='Ran 1 test')
self.assertEqual(proc.poll(), 0)