##// END OF EJS Templates
run-tests: add --runs-per-test flag...
Augie Fackler -
r24329:e7ca4d4b default
parent child Browse files
Show More
@@ -170,6 +170,8 b' def getparser():'
170 help="shortcut for --with-hg=<testdir>/../hg")
170 help="shortcut for --with-hg=<testdir>/../hg")
171 parser.add_option("--loop", action="store_true",
171 parser.add_option("--loop", action="store_true",
172 help="loop tests repeatedly")
172 help="loop tests repeatedly")
173 parser.add_option("--runs-per-test", type="int", dest="runs_per_test",
174 help="run each test N times (default=1)", default=1)
173 parser.add_option("-n", "--nodiff", action="store_true",
175 parser.add_option("-n", "--nodiff", action="store_true",
174 help="skip showing test changes")
176 help="skip showing test changes")
175 parser.add_option("-p", "--port", type="int",
177 parser.add_option("-p", "--port", type="int",
@@ -1288,7 +1290,7 b' class TestSuite(unittest.TestSuite):'
1288 """Custom unittest TestSuite that knows how to execute Mercurial tests."""
1290 """Custom unittest TestSuite that knows how to execute Mercurial tests."""
1289
1291
1290 def __init__(self, testdir, jobs=1, whitelist=None, blacklist=None,
1292 def __init__(self, testdir, jobs=1, whitelist=None, blacklist=None,
1291 retest=False, keywords=None, loop=False,
1293 retest=False, keywords=None, loop=False, runs_per_test=1,
1292 *args, **kwargs):
1294 *args, **kwargs):
1293 """Create a new instance that can run tests with a configuration.
1295 """Create a new instance that can run tests with a configuration.
1294
1296
@@ -1323,6 +1325,7 b' class TestSuite(unittest.TestSuite):'
1323 self._retest = retest
1325 self._retest = retest
1324 self._keywords = keywords
1326 self._keywords = keywords
1325 self._loop = loop
1327 self._loop = loop
1328 self._runs_per_test = runs_per_test
1326
1329
1327 def run(self, result):
1330 def run(self, result):
1328 # We have a number of filters that need to be applied. We do this
1331 # We have a number of filters that need to be applied. We do this
@@ -1356,8 +1359,8 b' class TestSuite(unittest.TestSuite):'
1356
1359
1357 if ignored:
1360 if ignored:
1358 continue
1361 continue
1359
1362 for _ in xrange(self._runs_per_test):
1360 tests.append(test)
1363 tests.append(test)
1361
1364
1362 runtests = list(tests)
1365 runtests = list(tests)
1363 done = queue.Queue()
1366 done = queue.Queue()
@@ -1729,6 +1732,7 b' class TestRunner(object):'
1729 retest=self.options.retest,
1732 retest=self.options.retest,
1730 keywords=self.options.keywords,
1733 keywords=self.options.keywords,
1731 loop=self.options.loop,
1734 loop=self.options.loop,
1735 runs_per_test=self.options.runs_per_test,
1732 tests=tests)
1736 tests=tests)
1733 verbosity = 1
1737 verbosity = 1
1734 if self.options.verbose:
1738 if self.options.verbose:
General Comments 0
You need to be logged in to leave comments. Login now