run-tests: introduce --random for running tests in random error
This is convenient when investigating failures one by one to avoid running the
same fixed tests first every time.
[ original upstream message ]
--- a/tests/run-tests.py Thu Mar 21 08:56:21 2013 +0100
+++ b/tests/run-tests.py Wed Apr 17 03:41:34 2013 +0200
@@ -198,6 +198,8 @@
help="enable Py3k warnings on Python 2.6+")
parser.add_option('--extra-config-opt', action="append",
help='set the given config opt in the test hgrc')
+ parser.add_option('--random', action="store_true",
+ help='run tests in random order')
for option, (envvar, default) in defaults.items():
defaults[option] = type(default)(os.environ.get(envvar, default))
@@ -1248,6 +1250,9 @@
tests = args
+ if options.random:
+ random.shuffle(tests)
+
# Reset some environment variables to well-known values so that
# the tests produce repeatable output.
os.environ['LANG'] = os.environ['LC_ALL'] = os.environ['LANGUAGE'] = 'C'