diff --git a/tests/run-tests.py b/tests/run-tests.py index a06172e85fd4d605c49bd26df48549d4130747f2_dGVzdHMvcnVuLXRlc3RzLnB5..769198c6a62d1a829b62101094326d8b1bffea41_dGVzdHMvcnVuLXRlc3RzLnB5 100755 --- a/tests/run-tests.py +++ b/tests/run-tests.py @@ -810,7 +810,15 @@ for n, l in enumerate(lines): if not l.endswith('\n'): l += '\n' - if l.startswith('#if'): + if l.startswith('#require'): + lsplit = l.split() + if len(lsplit) < 2 or lsplit[0] != '#require': + after.setdefault(pos, []).append(' !!! invalid #require\n') + if not self._hghave(lsplit[1:]): + script = ["exit 80\n"] + break + after.setdefault(pos, []).append(l) + elif l.startswith('#if'): lsplit = l.split() if len(lsplit) < 2 or lsplit[0] != '#if': after.setdefault(pos, []).append(' !!! invalid #if\n') diff --git a/tests/test-run-tests.t b/tests/test-run-tests.t index a06172e85fd4d605c49bd26df48549d4130747f2_dGVzdHMvdGVzdC1ydW4tdGVzdHMudA==..769198c6a62d1a829b62101094326d8b1bffea41_dGVzdHMvdGVzdC1ydW4tdGVzdHMudA== 100644 --- a/tests/test-run-tests.t +++ b/tests/test-run-tests.t @@ -309,7 +309,7 @@ ================ $ cat > test-skip.t <<EOF > $ echo xyzzy - > $ exit 80 + > #require false > EOF $ $TESTDIR/run-tests.py --with-hg=`which hg` --nodiff !.s