run-tests.py: don't let hg run interactively in debug mode
authorMads Kiilerich <madski@unity3d.com>
Fri, 18 Jan 2013 01:23:51 +0100
changeset 18449 20462259b92a
parent 18448 e760414be201
child 18450 4f9a52858512
run-tests.py: don't let hg run interactively in debug mode In normal test mode stdin is closed and hg is thus not interactive. In --debug mode stdin is inherited from the running console and to the tests, and hg could thus wait in prompts when running on Windows. See http://selenic.com/pipermail/mercurial-devel/2013-January/047548.html . Instead set ui.interactive=False to make Mercurial non-interactive. Other commands might still work differently in the --debug environment. This should solve the problem with hg waiting for input but still make it possible to add --debugger to hg in a test and run run-tests.py with --debug.
tests/run-tests.py
tests/test-commandserver.py.out
--- a/tests/run-tests.py	Fri Jan 18 01:16:16 2013 +0100
+++ b/tests/run-tests.py	Fri Jan 18 01:23:51 2013 +0100
@@ -874,6 +874,7 @@
     hgrc = open(HGRCPATH, 'w+')
     hgrc.write('[ui]\n')
     hgrc.write('slash = True\n')
+    hgrc.write('interactive = False\n')
     hgrc.write('[defaults]\n')
     hgrc.write('backout = -d "0 0"\n')
     hgrc.write('commit = -d "0 0"\n')
--- a/tests/test-commandserver.py.out	Fri Jan 18 01:16:16 2013 +0100
+++ b/tests/test-commandserver.py.out	Fri Jan 18 01:23:51 2013 +0100
@@ -75,6 +75,7 @@
 defaults.commit=-d "0 0"
 defaults.tag=-d "0 0"
 ui.slash=True
+ui.interactive=False
 ui.foo=bar
  runcommand init foo
  runcommand -R foo showconfig ui defaults
@@ -82,6 +83,7 @@
 defaults.commit=-d "0 0"
 defaults.tag=-d "0 0"
 ui.slash=True
+ui.interactive=False
 
 testing hookoutput: