D3507: tests: fix test-status-inprocess.py on Python 3

durin42 (Augie Fackler) phabricator at mercurial-scm.org
Tue May 8 15:27:19 EDT 2018


durin42 created this revision.
Herald added a reviewer: pulkit.
Herald added a subscriber: mercurial-devel.
Herald added a reviewer: hg-reviewers.

REVISION SUMMARY
  The same print() hack as test-filecache.py.

REPOSITORY
  rHG Mercurial

REVISION DETAIL
  https://phab.mercurial-scm.org/D3507

AFFECTED FILES
  contrib/python3-whitelist
  tests/test-status-inprocess.py

CHANGE DETAILS

diff --git a/tests/test-status-inprocess.py b/tests/test-status-inprocess.py
--- a/tests/test-status-inprocess.py
+++ b/tests/test-status-inprocess.py
@@ -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')
diff --git a/contrib/python3-whitelist b/contrib/python3-whitelist
--- a/contrib/python3-whitelist
+++ b/contrib/python3-whitelist
@@ -433,6 +433,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



To: durin42, pulkit, #hg-reviewers
Cc: mercurial-devel


More information about the Mercurial-devel mailing list