##// END OF EJS Templates
run-tests: print compatible output from TextTestRunner...
Gregory Szorc -
r21459:d5945324 default
parent child Browse files
Show More
@@ -1107,8 +1107,45 b' class TestSuite(unittest.TestSuite):'
1107 class TextTestRunner(unittest.TextTestRunner):
1107 class TextTestRunner(unittest.TextTestRunner):
1108 """Custom unittest test runner that uses appropriate settings."""
1108 """Custom unittest test runner that uses appropriate settings."""
1109
1109
1110 def _makeResult(self):
1110 def __init__(self, runner, *args, **kwargs):
1111 return TestResult(self.stream, self.descriptions, self.verbosity)
1111 super(TextTestRunner, self).__init__(*args, **kwargs)
1112
1113 self._runner = runner
1114
1115 def run(self, test):
1116 result = TestResult(self.stream, self.descriptions, self.verbosity)
1117
1118 test(result)
1119
1120 failed = len(result.failures)
1121 warned = len(result.warned)
1122 skipped = len(result.skipped)
1123 ignored = len(result.ignored)
1124
1125 self.stream.writeln('')
1126
1127 if not self._runner.options.noskips:
1128 for test, msg in result.skipped:
1129 self.stream.writeln('Skipped %s: %s' % (test.name, msg))
1130 for test, msg in result.warned:
1131 self.stream.writeln('Warned %s: %s' % (test.name, msg))
1132 for test, msg in result.failures:
1133 self.stream.writeln('Failed %s: %s' % (test.name, msg))
1134 for test, msg in result.errors:
1135 self.stream.writeln('Errored %s: %s' % (test.name, msg))
1136
1137 self._runner._checkhglib('Tested')
1138
1139 # This differs from unittest's default output in that we don't count
1140 # skipped and ignored tests as part of the total test count.
1141 self.stream.writeln('# Ran %d tests, %d skipped, %d warned, %d failed.'
1142 % (result.testsRun - skipped - ignored,
1143 skipped + ignored, warned, failed))
1144 if failed:
1145 self.stream.writeln('python hash seed: %s' %
1146 os.environ['PYTHONHASHSEED'])
1147 if self._runner.options.time:
1148 self._runner._outputtimes()
1112
1149
1113 class TestRunner(object):
1150 class TestRunner(object):
1114 """Holds context for executing tests.
1151 """Holds context for executing tests.
@@ -1323,7 +1360,7 b' class TestRunner(object):'
1323 verbosity = 1
1360 verbosity = 1
1324 if self.options.verbose:
1361 if self.options.verbose:
1325 verbosity = 2
1362 verbosity = 2
1326 runner = TextTestRunner(verbosity=verbosity)
1363 runner = TextTestRunner(self, verbosity=verbosity)
1327 runner.run(suite)
1364 runner.run(suite)
1328 else:
1365 else:
1329 self._executetests(tests)
1366 self._executetests(tests)
General Comments 0
You need to be logged in to leave comments. Login now