[PATCH 7 of 9] tests: add run-tests --changed option for running tests changed in parent or wd
Mads Kiilerich
mads at kiilerich.com
Tue Mar 18 18:33:55 CDT 2014
# HG changeset patch
# User Mads Kiilerich <madski at unity3d.com>
# Date 1393549740 -3600
# Fri Feb 28 02:09:00 2014 +0100
# Node ID e00c2a57827a52e15adaa000e427306a8b904bdb
# Parent 4546fe5f1b924ca58ac18a14253ebdc31c9af9bd
tests: add run-tests --changed option for running tests changed in parent or wd
Convenient when polishing patches and changing details of how they change test
output.
diff --git a/tests/run-tests.py b/tests/run-tests.py
--- a/tests/run-tests.py
+++ b/tests/run-tests.py
@@ -141,6 +141,8 @@ def parseargs():
help="skip tests listed in the specified blacklist file")
parser.add_option("--whitelist", action="append",
help="always run tests listed in the specified whitelist file")
+ parser.add_option("--changed", action="store_true",
+ help="run tests that are changed in parent rev or working directory")
parser.add_option("-C", "--annotate", action="store_true",
help="output files annotated with coverage")
parser.add_option("-c", "--cover", action="store_true",
@@ -1181,7 +1183,12 @@ def main():
checktools()
if not args:
- args = os.listdir(".")
+ if options.changed:
+ proc = Popen4('hg st --rev "p1(.)" -man0 .', None, 0)
+ stdout, stderr = proc.communicate()
+ args = stdout.strip('\0').split('\0')
+ else:
+ args = os.listdir(".")
tests = [t for t in args
if t.startswith("test-")
More information about the Mercurial-devel
mailing list