Skip to content

Commit 9feae41

Browse files
authored
bpo-41718: libregrtest avoids importing datetime (pythonGH-24985)
* libregrtest reimplements datetime.timedelta.__str__() * support.testresult only imports datetime if USE_XML is true.
1 parent 30793e8 commit 9feae41

File tree

2 files changed

+6
-5
lines changed

2 files changed

+6
-5
lines changed

Lib/test/libregrtest/main.py

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
import datetime
21
import faulthandler
32
import locale
43
import os
@@ -150,9 +149,12 @@ def log(self, line=''):
150149

151150
# add the timestamp prefix: "0:01:05 "
152151
test_time = time.monotonic() - self.start_time
153-
test_time = datetime.timedelta(seconds=int(test_time))
154-
line = f"{test_time} {line}"
155152

153+
mins, secs = divmod(int(test_time), 60)
154+
hours, mins = divmod(mins, 60)
155+
test_time = "%d:%02d:%02d" % (hours, mins, secs)
156+
157+
line = f"{test_time} {line}"
156158
if empty:
157159
line = line[:-1]
158160

Lib/test/support/testresult.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,6 @@
99
import traceback
1010
import unittest
1111

12-
from datetime import datetime
13-
1412
class RegressionTestResult(unittest.TextTestResult):
1513
separator1 = '=' * 70 + '\n'
1614
separator2 = '-' * 70 + '\n'
@@ -21,6 +19,7 @@ def __init__(self, stream, descriptions, verbosity):
2119
self.buffer = True
2220
if self.USE_XML:
2321
from xml.etree import ElementTree as ET
22+
from datetime import datetime
2423
self.__ET = ET
2524
self.__suite = ET.Element('testsuite')
2625
self.__suite.set('start', datetime.utcnow().isoformat(' '))

0 commit comments

Comments
 (0)