[PATCH 1 of 2] run-tests: allow different extra weight for slow tests
Pierre-Yves David
pierre-yves.david at ens-lyon.org
Sat May 9 21:25:20 UTC 2015
# HG changeset patch
# User Pierre-Yves David <pierre-yves.david at fb.com>
# Date 1431068647 25200
# Fri May 08 00:04:07 2015 -0700
# Node ID 48e50507613c2431153722786b539b5d6e488dad
# Parent 17ba4ccd20b48511b3d06ab47fb1b2faf31410d7
run-tests: allow different extra weight for slow tests
The 'test-check-code-hg.t' file is not big enough to be prioritized properly.
As a result my tests run often spend about 15 seconds running only it at the
end of its tests run. We make the "slow" mechanism a bit smarter to adjust the
extra weight of each category independently in a future patch.
diff --git a/tests/run-tests.py b/tests/run-tests.py
--- a/tests/run-tests.py
+++ b/tests/run-tests.py
@@ -1621,22 +1621,25 @@ class TestRunner(object):
def _run(self, tests):
if self.options.random:
random.shuffle(tests)
else:
# keywords for slow tests
- slow = 'svn gendoc check-code-hg'.split()
+ slow = {'svn': 10,
+ 'gendoc': 10,
+ 'check-code-hg': 10,
+ }
def sortkey(f):
# run largest tests first, as they tend to take the longest
try:
val = -os.stat(f).st_size
except OSError, e:
if e.errno != errno.ENOENT:
raise
return -1e9 # file does not exist, tell early
- for kw in slow:
+ for kw, mul in slow.iteritems():
if kw in f:
- val *= 10
+ val *= mul
return val
tests.sort(key=sortkey)
self._testdir = os.environ['TESTDIR'] = os.getcwd()
More information about the Mercurial-devel
mailing list