[PATCH 2 of 7] tests: execute check-config.py without xargs

FUJIWARA Katsunori foozy at lares.dti.ne.jp
Fri Feb 5 08:53:35 EST 2016


# HG changeset patch
# User FUJIWARA Katsunori <foozy at lares.dti.ne.jp>
# Date 1454679125 -32400
#      Fri Feb 05 22:32:05 2016 +0900
# Node ID 42fff041b3fb7fe2adcd494fe81bff431880dd1c
# Parent  e1652bc8139ba73b8092b0897a20bd0a8b3b705b
tests: execute check-config.py without xargs

Before this patch, test-check-config.t fails on Solaris, because
"xargs" doesn't invoke check-config.py with all filenames at once.

"xargs" may invoke specified command multiple times with part of
arguments given from stdin: according to "xargs(1)" man page, this
dividing arguments is system-dependent.

For portability of test-check-config.t, this patch adds "xargs" like
mode to check-config.py and executes it in test-check-config.t without
"xargs".

diff --git a/contrib/check-config.py b/contrib/check-config.py
--- a/contrib/check-config.py
+++ b/contrib/check-config.py
@@ -105,4 +105,7 @@ def main(args):
                 print "undocumented: %s (%s)%s" % (name, ctype, default)
 
 if __name__ == "__main__":
-    sys.exit(main(sys.argv[1:]))
+    if len(sys.argv) > 1:
+        sys.exit(main(sys.argv[1:]))
+    else:
+        sys.exit(main([l.rstrip() for l in sys.stdin]))
diff --git a/tests/test-check-config.t b/tests/test-check-config.t
--- a/tests/test-check-config.t
+++ b/tests/test-check-config.t
@@ -5,4 +5,4 @@
 New errors are not allowed. Warnings are strongly discouraged.
 
   $ hg files "set:(**.py or **.txt) - tests/**" | sed 's|\\|/|g' |
-  >   xargs python contrib/check-config.py
+  >   python contrib/check-config.py


More information about the Mercurial-devel mailing list