dist/pythonlibs: provide unittest TestCase wrapper for testrunner
I had this idea when implementing #10382 and #10392 as I introduced a very similar structure to python's standard unittests in those and it could also reduce some code duplication between those two tests.
This commit is contained in:
parent
b2407e4583
commit
4b5b5d910b
1
dist/pythonlibs/testrunner/__init__.py
vendored
1
dist/pythonlibs/testrunner/__init__.py
vendored
@ -13,6 +13,7 @@ from traceback import print_tb
|
|||||||
import pexpect
|
import pexpect
|
||||||
|
|
||||||
from .spawn import find_exc_origin, setup_child, teardown_child
|
from .spawn import find_exc_origin, setup_child, teardown_child
|
||||||
|
from .unittest import PexpectTestCase # noqa, F401 expose to users
|
||||||
|
|
||||||
|
|
||||||
def run(testfunc, timeout=10, echo=True, traceback=False):
|
def run(testfunc, timeout=10, echo=True, traceback=False):
|
||||||
|
|||||||
23
dist/pythonlibs/testrunner/unittest.py
vendored
Normal file
23
dist/pythonlibs/testrunner/unittest.py
vendored
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
# Copyright (C) 2018-19 Freie Universität Berlin
|
||||||
|
#
|
||||||
|
# This file is subject to the terms and conditions of the GNU Lesser
|
||||||
|
# General Public License v2.1. See the file LICENSE in the top level
|
||||||
|
# directory for more details.
|
||||||
|
|
||||||
|
import unittest
|
||||||
|
from testrunner import setup_child, teardown_child
|
||||||
|
|
||||||
|
|
||||||
|
class PexpectTestCase(unittest.TestCase):
|
||||||
|
TIMEOUT = 10
|
||||||
|
LOGFILE = None
|
||||||
|
|
||||||
|
"""A unittest TestCase providing a pexpect spawn object to it's tests
|
||||||
|
"""
|
||||||
|
@classmethod
|
||||||
|
def setUpClass(cls):
|
||||||
|
cls.spawn = setup_child(cls.TIMEOUT, logfile=cls.LOGFILE)
|
||||||
|
|
||||||
|
@classmethod
|
||||||
|
def tearDownClass(cls):
|
||||||
|
teardown_child(cls.spawn)
|
||||||
Loading…
x
Reference in New Issue
Block a user