silenttestrunner.py
25 lines
| 681 B
| text/x-python
|
PythonLexer
/ tests / silenttestrunner.py
Robert Stanca
|
r28736 | import os | ||
import sys | ||||
Robert Stanca
|
r28729 | import unittest | ||
Idan Kamara
|
r18665 | |||
Augie Fackler
|
r43346 | |||
Idan Kamara
|
r18665 | def main(modulename): | ||
'''run the tests found in module, printing nothing when all tests pass''' | ||||
module = sys.modules[modulename] | ||||
suite = unittest.defaultTestLoader.loadTestsFromModule(module) | ||||
results = unittest.TestResult() | ||||
suite.run(results) | ||||
if results.errors or results.failures: | ||||
for tc, exc in results.errors: | ||||
Robert Stanca
|
r28730 | print('ERROR:', tc) | ||
print() | ||||
Idan Kamara
|
r18665 | sys.stdout.write(exc) | ||
for tc, exc in results.failures: | ||||
Robert Stanca
|
r28730 | print('FAIL:', tc) | ||
print() | ||||
Idan Kamara
|
r18665 | sys.stdout.write(exc) | ||
sys.exit(1) | ||||
Augie Fackler
|
r23308 | |||
Augie Fackler
|
r43346 | |||
Augie Fackler
|
r23308 | if os.environ.get('SILENT_BE_NOISY'): | ||
main = unittest.main | ||||