tests: fix test-status-inprocess.py on Python 3
authorAugie Fackler <augie@google.com>
Fri, 27 Apr 2018 11:23:41 -0400
changeset 37901 bbff7170f665
parent 37900 b3ffa2faae04
child 37902 2095331ff926
tests: fix test-status-inprocess.py on Python 3 The same print() hack as test-filecache.py. Differential Revision: https://phab.mercurial-scm.org/D3507
contrib/python3-whitelist
tests/test-status-inprocess.py
--- a/contrib/python3-whitelist	Fri Apr 27 11:22:00 2018 -0400
+++ b/contrib/python3-whitelist	Fri Apr 27 11:23:41 2018 -0400
@@ -430,6 +430,7 @@
 test-ssh-proto.t
 test-sshserver.py
 test-stack.t
+test-status-inprocess.py
 test-status-rev.t
 test-status-terse.t
 test-strip-cross.t
--- a/tests/test-status-inprocess.py	Fri Apr 27 11:22:00 2018 -0400
+++ b/tests/test-status-inprocess.py	Fri Apr 27 11:23:41 2018 -0400
@@ -1,12 +1,24 @@
 #!/usr/bin/env python
 from __future__ import absolute_import, print_function
 
+import sys
+
 from mercurial import (
     commands,
     localrepo,
     ui as uimod,
 )
 
+print_ = print
+def print(*args, **kwargs):
+    """print() wrapper that flushes stdout buffers to avoid py3 buffer issues
+
+    We could also just write directly to sys.stdout.buffer the way the
+    ui object will, but this was easier for porting the test.
+    """
+    print_(*args, **kwargs)
+    sys.stdout.flush()
+
 u = uimod.ui.load()
 
 print('% creating repo')