unit_tests.py: add silence_output attr
This commit is contained in:
parent
60e7972f50
commit
ac0e08e55f
3 changed files with 12 additions and 3 deletions
|
|
@ -134,6 +134,10 @@ def run_test(test,subtest=None):
|
|||
msg(f'Running unit subtest {test}.{subtest_disp}')
|
||||
|
||||
t = getattr(mod,'unit_tests')()
|
||||
|
||||
if getattr(t,'silence_output',False):
|
||||
t._silence()
|
||||
|
||||
if hasattr(t,'_pre_subtest'):
|
||||
getattr(t,'_pre_subtest')(test,subtest,UnitTestHelpers(subtest))
|
||||
|
||||
|
|
@ -142,11 +146,16 @@ def run_test(test,subtest=None):
|
|||
if type(ret).__name__ == 'coroutine':
|
||||
ret = async_run(ret)
|
||||
except:
|
||||
if getattr(t,'silence_output',False):
|
||||
t._end_silence()
|
||||
raise
|
||||
|
||||
if hasattr(t,'_post_subtest'):
|
||||
getattr(t,'_post_subtest')(test,subtest,UnitTestHelpers(subtest))
|
||||
|
||||
if getattr(t,'silence_output',False):
|
||||
t._end_silence()
|
||||
|
||||
if not ret:
|
||||
die(4,f'Unit subtest {subtest_disp!r} failed')
|
||||
|
||||
|
|
|
|||
|
|
@ -11,6 +11,8 @@ from ..include.common import cfg
|
|||
|
||||
class unit_tests_base:
|
||||
|
||||
silence_output = False
|
||||
|
||||
def _silence(self):
|
||||
if not cfg.verbose:
|
||||
self.stdout_save = sys.stdout
|
||||
|
|
|
|||
|
|
@ -51,12 +51,10 @@ def print_hdr(hdr):
|
|||
# TODO: add data checks
|
||||
class unit_tests(unit_tests_base):
|
||||
|
||||
def _pre_subtest(self,name,subname,ut):
|
||||
self._silence()
|
||||
silence_output = True
|
||||
|
||||
def _post_subtest(self,name,subname,ut):
|
||||
print('-' * 80 + '\n')
|
||||
self._end_silence()
|
||||
|
||||
def diff(self,name,ut):
|
||||
for data in text_data + json_data:
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue