]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
bpo-41718: libregrtest avoids importing datetime (GH-24985)
authorVictor Stinner <vstinner@python.org>
Tue, 23 Mar 2021 00:40:31 +0000 (01:40 +0100)
committerGitHub <noreply@github.com>
Tue, 23 Mar 2021 00:40:31 +0000 (01:40 +0100)
* libregrtest reimplements datetime.timedelta.__str__()
* support.testresult only imports datetime if USE_XML is true.

Lib/test/libregrtest/main.py
Lib/test/support/testresult.py

index 793c99a8f4ca32a949e976db808e2634fc40567e..1df927da403d6ec5f83951e52d7f17fc0f30cb81 100644 (file)
@@ -1,4 +1,3 @@
-import datetime
 import faulthandler
 import locale
 import os
@@ -150,9 +149,12 @@ class Regrtest:
 
         # add the timestamp prefix:  "0:01:05 "
         test_time = time.monotonic() - self.start_time
-        test_time = datetime.timedelta(seconds=int(test_time))
-        line = f"{test_time} {line}"
 
+        mins, secs = divmod(int(test_time), 60)
+        hours, mins = divmod(mins, 60)
+        test_time = "%d:%02d:%02d" % (hours, mins, secs)
+
+        line = f"{test_time} {line}"
         if empty:
             line = line[:-1]
 
index 6be3e5250ae5880742f0a645ff2b6ccaf4c58d82..670afbea2659defea97b8ffd609af4640baa0012 100644 (file)
@@ -9,8 +9,6 @@ import time
 import traceback
 import unittest
 
-from datetime import datetime
-
 class RegressionTestResult(unittest.TextTestResult):
     separator1 = '=' * 70 + '\n'
     separator2 = '-' * 70 + '\n'
@@ -21,6 +19,7 @@ class RegressionTestResult(unittest.TextTestResult):
         self.buffer = True
         if self.USE_XML:
             from xml.etree import ElementTree as ET
+            from datetime import datetime
             self.__ET = ET
             self.__suite = ET.Element('testsuite')
             self.__suite.set('start', datetime.utcnow().isoformat(' '))