Mercurial > hg-stable
changeset 29582:ee96d95e81a4
run-tests: allow --local to set multiple attributes
This is to make the next patch easier to review. It does not change logic.
author | Jun Wu <quark@fb.com> |
---|---|
date | Mon, 18 Jul 2016 08:45:46 +0100 |
parents | c66bc06f1bf6 |
children | 6ce870dba6fa |
files | tests/run-tests.py |
diffstat | 1 files changed, 8 insertions(+), 5 deletions(-) [+] |
line wrap: on
line diff
--- a/tests/run-tests.py Sun Jul 17 23:05:59 2016 +0100 +++ b/tests/run-tests.py Mon Jul 18 08:45:46 2016 +0100 @@ -308,11 +308,14 @@ sys.stderr.write('warning: --with-hg should specify an hg script\n') if options.local: testdir = os.path.dirname(_bytespath(canonpath(sys.argv[0]))) - hgbin = os.path.join(os.path.dirname(testdir), b'hg') - if os.name != 'nt' and not os.access(hgbin, os.X_OK): - parser.error('--local specified, but %r not found or not executable' - % hgbin) - options.with_hg = hgbin + reporootdir = os.path.dirname(testdir) + pathandattrs = [(b'hg', 'with_hg')] + for relpath, attr in pathandattrs: + binpath = os.path.join(reporootdir, relpath) + if os.name != 'nt' and not os.access(binpath, os.X_OK): + parser.error('--local specified, but %r not found or ' + 'not executable' % binpath) + setattr(options, attr, binpath) if (options.chg or options.with_chg) and os.name == 'nt': parser.error('chg does not work on %s' % os.name)