##// 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 170 help="shortcut for --with-hg=<testdir>/../hg")
171 171 parser.add_option("--loop", action="store_true",
172 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 175 parser.add_option("-n", "--nodiff", action="store_true",
174 176 help="skip showing test changes")
175 177 parser.add_option("-p", "--port", type="int",
@@ -1288,7 +1290,7 b' class TestSuite(unittest.TestSuite):'
1288 1290 """Custom unittest TestSuite that knows how to execute Mercurial tests."""
1289 1291
1290 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 1294 *args, **kwargs):
1293 1295 """Create a new instance that can run tests with a configuration.
1294 1296
@@ -1323,6 +1325,7 b' class TestSuite(unittest.TestSuite):'
1323 1325 self._retest = retest
1324 1326 self._keywords = keywords
1325 1327 self._loop = loop
1328 self._runs_per_test = runs_per_test
1326 1329
1327 1330 def run(self, result):
1328 1331 # We have a number of filters that need to be applied. We do this
@@ -1356,7 +1359,7 b' class TestSuite(unittest.TestSuite):'
1356 1359
1357 1360 if ignored:
1358 1361 continue
1359
1362 for _ in xrange(self._runs_per_test):
1360 1363 tests.append(test)
1361 1364
1362 1365 runtests = list(tests)
@@ -1729,6 +1732,7 b' class TestRunner(object):'
1729 1732 retest=self.options.retest,
1730 1733 keywords=self.options.keywords,
1731 1734 loop=self.options.loop,
1735 runs_per_test=self.options.runs_per_test,
1732 1736 tests=tests)
1733 1737 verbosity = 1
1734 1738 if self.options.verbose:
General Comments 0
You need to be logged in to leave comments. Login now