Chromium Code Reviews| Index: tools/testing/dart/test_progress.dart |
| diff --git a/tools/testing/dart/test_progress.dart b/tools/testing/dart/test_progress.dart |
| index b288db5b064349b6eba742a5b032a1e7bf37b050..497bdca591293a26438be466f721afb9f17de585 100644 |
| --- a/tools/testing/dart/test_progress.dart |
| +++ b/tools/testing/dart/test_progress.dart |
| @@ -213,17 +213,23 @@ class TimingPrinter extends EventListener { |
| } |
| void allDone() { |
| - // TODO: We should take all the commands into account |
| + Duration durationOfTest(testCase) { |
| + var duration = const Duration(); |
| + for (var output in testCase.commandOutputs.values) { |
| + duration += output.time; |
| + } |
| + return duration; |
| + } |
|
kustermann
2013/07/16 14:48:47
This procedure will be called O(n*log n) which mea
|
| + |
| Duration d = (new DateTime.now()).difference(_startTime); |
| print('\n--- Total time: ${_timeString(d)} ---'); |
| _tests.sort((a, b) { |
| - Duration aDuration = a.lastCommandOutput.time; |
| - Duration bDuration = b.lastCommandOutput.time; |
| - return bDuration.inMilliseconds - aDuration.inMilliseconds; |
| + return |
| + durationOfTest(b).inMilliseconds - durationOfTest(a).inMilliseconds; |
| }); |
| for (int i = 0; i < 20 && i < _tests.length; i++) { |
| var name = _tests[i].displayName; |
| - var duration = _tests[i].lastCommandOutput.time; |
| + var duration = durationOfTest(_tests[i]); |
| var configuration = _tests[i].configurationString; |
| print('${duration} - $configuration $name'); |
| } |