tests: on windows, run command explicitly in sh for working command substitution
authorSimon Heimberg <simohe@besonet.ch>
Sat, 08 Feb 2014 10:41:17 +0100
changeset 20396 a8e6ab7eb361
parent 20395 ab71fb058ebf
child 20397 d7e78e6d97bd
tests: on windows, run command explicitly in sh for working command substitution On windows, os.system runs the command in cmd.exe, which does not know command substitution. To let this work, run the command explicitly in sh. This fixes the failure of this test on windows.
tests/test-commandserver.py
--- a/tests/test-commandserver.py	Tue Jan 28 00:33:52 2014 +0100
+++ b/tests/test-commandserver.py	Sat Feb 08 10:41:17 2014 +0100
@@ -267,7 +267,10 @@
 
     runcommand(server, ['up', 'null'])
     runcommand(server, ['phase', '-df', 'tip'])
-    os.system('hg debugobsolete `hg log -r tip --template {node}`')
+    cmd = 'hg debugobsolete `hg log -r tip --template {node}`'
+    if os.name == 'nt':
+        cmd = 'sh -c "%s"' % cmd # run in sh, not cmd.exe
+    os.system(cmd)
     runcommand(server, ['log', '--hidden'])
     runcommand(server, ['log'])