# HG changeset patch # User Jun Wu # Date 1520109554 28800 # Node ID a247a0e82e7d4d9c3896a69a6d11c41b47daf979 # Parent c6a61298ac32f429ecd46cde2c52b1405d304849 run-tests: allow #require inside #if Used by the next patch. Differential Revision: https://phab.mercurial-scm.org/D2605 diff -r c6a61298ac32 -r a247a0e82e7d tests/run-tests.py --- a/tests/run-tests.py Sat Mar 03 12:39:14 2018 -0800 +++ b/tests/run-tests.py Sat Mar 03 12:39:14 2018 -0800 @@ -1373,10 +1373,11 @@ lsplit = l.split() if len(lsplit) < 2 or lsplit[0] != b'#require': after.setdefault(pos, []).append(' !!! invalid #require\n') - haveresult, message = self._hghave(lsplit[1:]) - if not haveresult: - script = [b'echo "%s"\nexit 80\n' % message] - break + if not skipping: + haveresult, message = self._hghave(lsplit[1:]) + if not haveresult: + script = [b'echo "%s"\nexit 80\n' % message] + break after.setdefault(pos, []).append(l) elif l.startswith(b'#if'): lsplit = l.split() diff -r c6a61298ac32 -r a247a0e82e7d tests/test-run-tests.t --- a/tests/test-run-tests.t Sat Mar 03 12:39:14 2018 -0800 +++ b/tests/test-run-tests.t Sat Mar 03 12:39:14 2018 -0800 @@ -921,16 +921,24 @@ ================ $ cat > test-skip.t < $ echo xyzzy + > #if true > #require false + > #end + > EOF + $ cat > test-noskip.t < #if false + > #require false + > #endif > EOF $ rt --nodiff - !.s + !.s. Skipped test-skip.t: missing feature: nail clipper Failed test-failure.t: output changed - # Ran 2 tests, 1 skipped, 1 failed. + # Ran 3 tests, 1 skipped, 1 failed. python hash seed: * (glob) [1] + $ rm test-noskip.t $ rt --keyword xyzzy .s Skipped test-skip.t: missing feature: nail clipper