# HG changeset patch # User Matt Harbison # Date 1497838794 14400 # Node ID bd77ac2bd23ab5ba10e5c69a1453b40475142c33 # Parent 23b07333a8b2a143486f22ada1606a7d225793a8 run-tests: explicitly flush test runner output for Windows stability When hghave testing goes awry, the output order was changing on Windows. diff --git a/tests/test-run-tests.t b/tests/test-run-tests.t --- a/tests/test-run-tests.t +++ b/tests/test-run-tests.t @@ -920,10 +920,10 @@ > EOF > done $ rt -j 2 - .... + ....skipped: unknown feature: notarealhghavefeature\r (esc) + + # Ran 5 tests, 0 skipped, 0 warned, 0 failed. - skipped: unknown feature: notarealhghavefeature - $ cd .. $ rm -rf broken Since 'skipped: unknown feature: notarealhghavefeature\n\n' is printed to stdout and the rest to stderr, it seems like maybe stdio isn't line buffered on Windows. When a program exits, stdout is flushed before stderr[1]. [1] https://blogs.msdn.microsoft.com/oldnewthing/20060519-09/?p=31133 diff -r 23b07333a8b2 -r bd77ac2bd23a tests/run-tests.py --- a/tests/run-tests.py Sun Jun 18 21:31:53 2017 -0400 +++ b/tests/run-tests.py Sun Jun 18 22:19:54 2017 -0400 @@ -2010,6 +2010,7 @@ os.environ['PYTHONHASHSEED']) if self._runner.options.time: self.printtimes(result.times) + self.stream.flush() return result