# HG changeset patch # User Pierre-Yves David # Date 1570463578 14400 # Node ID fb41ea2ea076be26354586abc78c7cda42c267df # Parent e8cf9ad52a785a3fd1efdad04b5ce591dc2cc4e1 formatting: introduce a `test-check-format-black.t` that enforce formatting This should prevent use to drift away from the expect format. diff -r e8cf9ad52a78 -r fb41ea2ea076 tests/hghave.py --- a/tests/hghave.py Mon Oct 07 10:58:51 2019 -0400 +++ b/tests/hghave.py Mon Oct 07 11:52:58 2019 -0400 @@ -1,4 +1,4 @@ -from __future__ import absolute_import +from __future__ import absolute_import, print_function import os import re @@ -972,3 +972,14 @@ # 24.4, so we allow emacs 24.4, 24.5, and 25+ (24.5 was the last # 24 release) return matchoutput('emacs --version', b'GNU Emacs 2(4.4|4.5|5|6|7|8|9)') + + +# @check('black', 'the black formatter for python') +@check('grey', 'grey, the fork of the black formatter for python') +def has_black(): + # use that to actual black as soon as possible + # blackcmd = b'black --version' + blackcmd = b'python3 $RUNTESTDIR/../contrib/grey.py --version' + # version_regex = b'black, version \d' + version_regex = b'grey.py, version \d' + return matchoutput(blackcmd, version_regex) diff -r e8cf9ad52a78 -r fb41ea2ea076 tests/test-check-format.t --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/test-check-format.t Mon Oct 07 11:52:58 2019 -0400 @@ -0,0 +1,7 @@ +#require grey + +(this should use the actual black as soon as possible) + + $ cd $RUNTESTDIR/.. + $ python3 contrib/grey.py -S --quiet --check --diff `hg files 'set:**.py - hgext/fsmonitor/pywatchman/** - mercurial/thirdparty/** - "contrib/python-zstandard/**" - contrib/grey.py'` +