Skip to content

Commit e527f79

Browse files
[3.9] bpo-45057: Simplify RegressionTestResult (GH-28081) (GH-28103)
Remove code which duplicates the functionality of TextTestResult. (cherry picked from commit 2b76a53)
1 parent 2280bc1 commit e527f79

File tree

1 file changed

+2
-31
lines changed

1 file changed

+2
-31
lines changed

Lib/test/support/testresult.py

Lines changed: 2 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -14,19 +14,16 @@
1414
from datetime import datetime
1515

1616
class RegressionTestResult(unittest.TextTestResult):
17-
separator1 = '=' * 70 + '\n'
18-
separator2 = '-' * 70 + '\n'
1917

2018
def __init__(self, stream, descriptions, verbosity):
21-
super().__init__(stream=stream, descriptions=descriptions, verbosity=0)
19+
super().__init__(stream=stream, descriptions=descriptions,
20+
verbosity=2 if verbosity else 0)
2221
self.buffer = True
2322
self.__suite = ET.Element('testsuite')
2423
self.__suite.set('start', datetime.utcnow().isoformat(' '))
2524

2625
self.__e = None
2726
self.__start_time = None
28-
self.__results = []
29-
self.__verbose = bool(verbosity)
3027

3128
@classmethod
3229
def __getId(cls, test):
@@ -44,9 +41,6 @@ def startTest(self, test):
4441
super().startTest(test)
4542
self.__e = e = ET.SubElement(self.__suite, 'testcase')
4643
self.__start_time = time.perf_counter()
47-
if self.__verbose:
48-
self.stream.write(f'{self.getDescription(test)} ... ')
49-
self.stream.flush()
5044

5145
def _add_result(self, test, capture=False, **args):
5246
e = self.__e
@@ -80,10 +74,6 @@ def _add_result(self, test, capture=False, **args):
8074
else:
8175
e2.text = str(v)
8276

83-
def __write(self, c, word):
84-
if self.__verbose:
85-
self.stream.write(f'{word}\n')
86-
8777
@classmethod
8878
def __makeErrorDict(cls, err_type, err_value, err_tb):
8979
if isinstance(err_type, type):
@@ -106,45 +96,26 @@ def __makeErrorDict(cls, err_type, err_value, err_tb):
10696
def addError(self, test, err):
10797
self._add_result(test, True, error=self.__makeErrorDict(*err))
10898
super().addError(test, err)
109-
self.__write('E', 'ERROR')
11099

111100
def addExpectedFailure(self, test, err):
112101
self._add_result(test, True, output=self.__makeErrorDict(*err))
113102
super().addExpectedFailure(test, err)
114-
self.__write('x', 'expected failure')
115103

116104
def addFailure(self, test, err):
117105
self._add_result(test, True, failure=self.__makeErrorDict(*err))
118106
super().addFailure(test, err)
119-
self.__write('F', 'FAIL')
120107

121108
def addSkip(self, test, reason):
122109
self._add_result(test, skipped=reason)
123110
super().addSkip(test, reason)
124-
self.__write('S', f'skipped {reason!r}')
125111

126112
def addSuccess(self, test):
127113
self._add_result(test)
128114
super().addSuccess(test)
129-
self.__write('.', 'ok')
130115

131116
def addUnexpectedSuccess(self, test):
132117
self._add_result(test, outcome='UNEXPECTED_SUCCESS')
133118
super().addUnexpectedSuccess(test)
134-
self.__write('u', 'unexpected success')
135-
136-
def printErrors(self):
137-
if self.__verbose:
138-
self.stream.write('\n')
139-
self.printErrorList('ERROR', self.errors)
140-
self.printErrorList('FAIL', self.failures)
141-
142-
def printErrorList(self, flavor, errors):
143-
for test, err in errors:
144-
self.stream.write(self.separator1)
145-
self.stream.write(f'{flavor}: {self.getDescription(test)}\n')
146-
self.stream.write(self.separator2)
147-
self.stream.write('%s\n' % err)
148119

149120
def get_xml_element(self):
150121
e = self.__suite

0 commit comments

Comments
 (0)