Mercurial > hg
view tests/test-check-code.t @ 32013:0cf4d6763735
obsolescence: add test for the "branch replacement" logic during push, case B6
Mercurial checks for the introduction of new heads on push. Evolution comes
into play to detect if existing branches on the server are being replaced by
some of the new one we push.
This changeset adds test for the improved "branch replacement" logic introduce
in an earlier commits. This tests initially lived in the evolve extensions.
Since we now have the code handling this logic in core, it make sense to have
the tests in core too.
See inline documentation for details about the test case added in this
changeset.
author | Pierre-Yves David <pierre-yves.david@ens-lyon.org> |
---|---|
date | Sat, 15 Apr 2017 02:53:42 +0200 |
parents | c85f19c66e8d |
children | c939fdce0fde |
line wrap: on
line source
#require test-repo $ . "$TESTDIR/helpers-testrepo.sh" $ check_code="$TESTDIR"/../contrib/check-code.py $ cd "$TESTDIR"/.. New errors are not allowed. Warnings are strongly discouraged. (The writing "no-che?k-code" is for not skipping this file when checking.) $ hg locate -X contrib/python-zstandard -X hgext/fsmonitor/pywatchman | > sed 's-\\-/-g' | "$check_code" --warnings --per-file=0 - || false contrib/perf.py:869: > r.revision(r.node(x)) don't convert rev to node before passing to revision(nodeorrev) Skipping i18n/polib.py it has no-che?k-code (glob) mercurial/demandimport.py:313: > if os.environ.get('HGDEMANDIMPORT') != 'disable': use encoding.environ instead (py3) mercurial/encoding.py:54: > environ = os.environ use encoding.environ instead (py3) mercurial/encoding.py:56: > environ = os.environb use encoding.environ instead (py3) mercurial/encoding.py:61: > for k, v in os.environ.items()) use encoding.environ instead (py3) mercurial/encoding.py:221: > for k, v in os.environ.items()) use encoding.environ instead (py3) Skipping mercurial/httpclient/__init__.py it has no-che?k-code (glob) Skipping mercurial/httpclient/_readers.py it has no-che?k-code (glob) mercurial/policy.py:46: > if 'HGMODULEPOLICY' in os.environ: use encoding.environ instead (py3) mercurial/policy.py:47: > policy = os.environ['HGMODULEPOLICY'].encode('utf-8') use encoding.environ instead (py3) mercurial/policy.py:49: > policy = os.environ.get('HGMODULEPOLICY', policy) use encoding.environ instead (py3) Skipping mercurial/statprof.py it has no-che?k-code (glob) Skipping tests/badserverext.py it has no-che?k-code (glob) [1] @commands in debugcommands.py should be in alphabetical order. >>> import re >>> commands = [] >>> with open('mercurial/debugcommands.py', 'rb') as fh: ... for line in fh: ... m = re.match("^@command\('([a-z]+)", line) ... if m: ... commands.append(m.group(1)) >>> scommands = list(sorted(commands)) >>> for i, command in enumerate(scommands): ... if command != commands[i]: ... print('commands in debugcommands.py not sorted; first differing ' ... 'command is %s; expected %s' % (commands[i], command)) ... break Prevent adding new files in the root directory accidentally. $ hg files 'glob:*' .editorconfig .hgignore .hgsigs .hgtags CONTRIBUTING CONTRIBUTORS COPYING Makefile README hg hgeditor hgweb.cgi setup.py