Patchwork D1159: run-tests: move newline out of colorized message

login
register
mail settings
Submitter phabricator
Date Oct. 17, 2017, 6:02 p.m.
Message ID <differential-rev-PHID-DREV-b6bvhps5z4lsoe3dewtd-req@phab.mercurial-scm.org>
Download mbox | patch
Permalink /patch/25126/
State Superseded
Headers show

Comments

phabricator - Oct. 17, 2017, 6:02 p.m.
martinvonz created this revision.
Herald added a subscriber: mercurial-devel.
Herald added a reviewer: hg-reviewers.

REVISION SUMMARY
  The leading newline before "ERROR:" led to an incorrect lexing of the
  message and the newline got lost.
  
  The fixed formatting can be seen in the test case. The reason we
  didn't notice before was that the bad formatting just led to the loss
  of a blank line in the test. However, there are other cases where it
  would be joined with a line saying "Accept this change? [n]" or
  "Reference output has changed (run again to prompt changes)".

REPOSITORY
  rHG Mercurial

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

AFFECTED FILES
  tests/run-tests.py
  tests/test-run-tests.t

CHANGE DETAILS




To: martinvonz, #hg-reviewers
Cc: mercurial-devel

Patch

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
@@ -131,6 +131,7 @@ 
   \x1b[38;5;34m+  bar*baz (glob)\x1b[39m (esc)
      bar*bad (glob)
   \x1b[38;5;124m-  bar*baz (glob)\x1b[39m (esc)
+  
   \x1b[38;5;88mERROR: \x1b[39m\x1b[38;5;9mtest-failure.t\x1b[39m\x1b[38;5;88m output changed\x1b[39m (esc)
   !
   \x1b[38;5;88mFailed \x1b[39m\x1b[38;5;9mtest-failure.t\x1b[39m\x1b[38;5;88m: output changed\x1b[39m (esc)
diff --git a/tests/run-tests.py b/tests/run-tests.py
--- a/tests/run-tests.py
+++ b/tests/run-tests.py
@@ -1663,7 +1663,9 @@ 
                     self.stream.write('t')
                 else:
                     if not self._options.nodiff:
-                        formatted = '\nERROR: %s output changed\n' % test
+                        self.stream.write('\n')
+                        # Exclude the '\n' from highlighting to lex correctly
+                        formatted = 'ERROR: %s output changed\n' % test
                         self.stream.write(highlightmsg(formatted, self.color))
                     self.stream.write('!')