@@ -90,6 +90,7 @@ def combine_results(self, result, buffered_results):
9090 # Sort the results back into alphabetical order. Running the tests in
9191 # parallel causes mis-orderings, this makes the results more readable.
9292 results = sorted (buffered_results , key = lambda res : str (res .test ))
93+ result .core_time = 0
9394 for r in results :
9495 r .updateResult (result )
9596 return result
@@ -102,18 +103,21 @@ class BufferedParallelTestResult:
102103 """
103104 def __init__ (self ):
104105 self .buffered_result = None
106+ self .test_duration = 0
105107
106108 @property
107109 def test (self ):
108110 return self .buffered_result .test
109111
110- def addDuration (self , test , elapsed ):
111- pass
112+ def calculateDuration (self ):
113+ self .test_duration = time .perf_counter () - self .start_time
114+ return self .test_duration
112115
113116 def updateResult (self , result ):
114117 result .startTest (self .test )
115118 self .buffered_result .updateResult (result )
116119 result .stopTest (self .test )
120+ result .core_time += self .test_duration
117121
118122 def startTest (self , test ):
119123 self .start_time = time .perf_counter ()
@@ -122,21 +126,21 @@ def stopTest(self, test):
122126 # TODO(sbc): figure out a way to display this duration information again when
123127 # these results get passed back to the TextTestRunner/TextTestResult.
124128 if hasattr (time , 'perf_counter' ):
125- self .buffered_result .duration = time . perf_counter () - self .start_time
129+ self .buffered_result .duration = self .test_duration
126130
127131 def addSuccess (self , test ):
128132 if hasattr (time , 'perf_counter' ):
129- print (test , '... ok (%.2fs)' % (time . perf_counter () - self . start_time ), file = sys .stderr )
133+ print (test , '... ok (%.2fs)' % (self . calculateDuration () ), file = sys .stderr )
130134 self .buffered_result = BufferedTestSuccess (test )
131135
132136 def addExpectedFailure (self , test , err ):
133137 if hasattr (time , 'perf_counter' ):
134- print (test , '... expected failure (%.2fs)' % (time . perf_counter () - self . start_time ), file = sys .stderr )
138+ print (test , '... expected failure (%.2fs)' % (self . calculateDuration () ), file = sys .stderr )
135139 self .buffered_result = BufferedTestExpectedFailure (test , err )
136140
137141 def addUnexpectedSuccess (self , test ):
138142 if hasattr (time , 'perf_counter' ):
139- print (test , '... unexpected success (%.2fs)' % (time . perf_counter () - self . start_time ), file = sys .stderr )
143+ print (test , '... unexpected success (%.2fs)' % (self . calculateDuration () ), file = sys .stderr )
140144 self .buffered_result = BufferedTestUnexpectedSuccess (test )
141145
142146 def addSkip (self , test , reason ):
0 commit comments