annotate tests/test-check-code.t @ 31684:0be96ac9199a

rcutil: add a method to convert environment variables to config items Handling config and environ priorities has been messy. Partially because we don't have config layers - you either get all configs (sys + user), or none. Ideally, environ like $EDITOR, $PAGER should be able to override the system configs "ui.editor", "pager.pager". This patch provides the ability to convert them into config items, so they can be inserted into the middle config layer between system rc and user rc.
author Jun Wu <quark@fb.com>
date Sun, 26 Mar 2017 21:27:02 -0700
parents 6419cd243017
children be8a866a2c44
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
27368
409a20314c64 tests: move the '-hg' postfix for all style tests
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
1 #require test-repo
409a20314c64 tests: move the '-hg' postfix for all style tests
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
2
29219
3c9066ed557c tests: silence test-repo obsolete warning
timeless <timeless@mozdev.org>
parents: 28529
diff changeset
3 $ . "$TESTDIR/helpers-testrepo.sh"
27368
409a20314c64 tests: move the '-hg' postfix for all style tests
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
4 $ check_code="$TESTDIR"/../contrib/check-code.py
409a20314c64 tests: move the '-hg' postfix for all style tests
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
5 $ cd "$TESTDIR"/..
409a20314c64 tests: move the '-hg' postfix for all style tests
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
6
409a20314c64 tests: move the '-hg' postfix for all style tests
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
7 New errors are not allowed. Warnings are strongly discouraged.
409a20314c64 tests: move the '-hg' postfix for all style tests
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
8 (The writing "no-che?k-code" is for not skipping this file when checking.)
409a20314c64 tests: move the '-hg' postfix for all style tests
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
9
30633
fd244e047ec0 tests: exclude bundled pywatchman from check-code test
David Soria Parra <davidsp@fb.com>
parents: 30541
diff changeset
10 $ hg locate -X contrib/python-zstandard -X hgext/fsmonitor/pywatchman |
fd244e047ec0 tests: exclude bundled pywatchman from check-code test
David Soria Parra <davidsp@fb.com>
parents: 30541
diff changeset
11 > sed 's-\\-/-g' | xargs "$check_code" --warnings --per-file=0 || false
27368
409a20314c64 tests: move the '-hg' postfix for all style tests
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
12 Skipping i18n/polib.py it has no-che?k-code (glob)
30697
13d94304c8da merge with stable
Augie Fackler <augie@google.com>
parents: 30667
diff changeset
13 mercurial/demandimport.py:312:
30665
01721d382c16 py3: add warnings in check-code related to py3
Pulkit Goyal <7895pulkit@gmail.com>
parents: 30633
diff changeset
14 > if os.environ.get('HGDEMANDIMPORT') != 'disable':
01721d382c16 py3: add warnings in check-code related to py3
Pulkit Goyal <7895pulkit@gmail.com>
parents: 30633
diff changeset
15 use encoding.environ instead (py3)
01721d382c16 py3: add warnings in check-code related to py3
Pulkit Goyal <7895pulkit@gmail.com>
parents: 30633
diff changeset
16 mercurial/encoding.py:54:
01721d382c16 py3: add warnings in check-code related to py3
Pulkit Goyal <7895pulkit@gmail.com>
parents: 30633
diff changeset
17 > environ = os.environ
01721d382c16 py3: add warnings in check-code related to py3
Pulkit Goyal <7895pulkit@gmail.com>
parents: 30633
diff changeset
18 use encoding.environ instead (py3)
01721d382c16 py3: add warnings in check-code related to py3
Pulkit Goyal <7895pulkit@gmail.com>
parents: 30633
diff changeset
19 mercurial/encoding.py:56:
01721d382c16 py3: add warnings in check-code related to py3
Pulkit Goyal <7895pulkit@gmail.com>
parents: 30633
diff changeset
20 > environ = os.environb
01721d382c16 py3: add warnings in check-code related to py3
Pulkit Goyal <7895pulkit@gmail.com>
parents: 30633
diff changeset
21 use encoding.environ instead (py3)
01721d382c16 py3: add warnings in check-code related to py3
Pulkit Goyal <7895pulkit@gmail.com>
parents: 30633
diff changeset
22 mercurial/encoding.py:61:
01721d382c16 py3: add warnings in check-code related to py3
Pulkit Goyal <7895pulkit@gmail.com>
parents: 30633
diff changeset
23 > for k, v in os.environ.items())
01721d382c16 py3: add warnings in check-code related to py3
Pulkit Goyal <7895pulkit@gmail.com>
parents: 30633
diff changeset
24 use encoding.environ instead (py3)
31448
6419cd243017 encoding: add converter between native str and byte string
Yuya Nishihara <yuya@tcha.org>
parents: 31447
diff changeset
25 mercurial/encoding.py:221:
30665
01721d382c16 py3: add warnings in check-code related to py3
Pulkit Goyal <7895pulkit@gmail.com>
parents: 30633
diff changeset
26 > for k, v in os.environ.items())
01721d382c16 py3: add warnings in check-code related to py3
Pulkit Goyal <7895pulkit@gmail.com>
parents: 30633
diff changeset
27 use encoding.environ instead (py3)
27368
409a20314c64 tests: move the '-hg' postfix for all style tests
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
28 Skipping mercurial/httpclient/__init__.py it has no-che?k-code (glob)
409a20314c64 tests: move the '-hg' postfix for all style tests
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
29 Skipping mercurial/httpclient/_readers.py it has no-che?k-code (glob)
31361
8a17c541177f py3: add "b" prefix to string literals related to module policy
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 30697
diff changeset
30 mercurial/policy.py:46:
8a17c541177f py3: add "b" prefix to string literals related to module policy
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 30697
diff changeset
31 > if 'HGMODULEPOLICY' in os.environ:
8a17c541177f py3: add "b" prefix to string literals related to module policy
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 30697
diff changeset
32 use encoding.environ instead (py3)
8a17c541177f py3: add "b" prefix to string literals related to module policy
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 30697
diff changeset
33 mercurial/policy.py:47:
8a17c541177f py3: add "b" prefix to string literals related to module policy
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 30697
diff changeset
34 > policy = os.environ['HGMODULEPOLICY'].encode('utf-8')
8a17c541177f py3: add "b" prefix to string literals related to module policy
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 30697
diff changeset
35 use encoding.environ instead (py3)
8a17c541177f py3: add "b" prefix to string literals related to module policy
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 30697
diff changeset
36 mercurial/policy.py:49:
8a17c541177f py3: add "b" prefix to string literals related to module policy
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 30697
diff changeset
37 > policy = os.environ.get('HGMODULEPOLICY', policy)
30665
01721d382c16 py3: add warnings in check-code related to py3
Pulkit Goyal <7895pulkit@gmail.com>
parents: 30633
diff changeset
38 use encoding.environ instead (py3)
30253
b032a7b676c6 statprof: vendor statprof.py
Gregory Szorc <gregory.szorc@gmail.com>
parents: 29442
diff changeset
39 Skipping mercurial/statprof.py it has no-che?k-code (glob)
30665
01721d382c16 py3: add warnings in check-code related to py3
Pulkit Goyal <7895pulkit@gmail.com>
parents: 30633
diff changeset
40 [1]
30540
d955cebd8d6a tests: add test that @commands in debugcommands.py are sorted
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30435
diff changeset
41
d955cebd8d6a tests: add test that @commands in debugcommands.py are sorted
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30435
diff changeset
42 @commands in debugcommands.py should be in alphabetical order.
d955cebd8d6a tests: add test that @commands in debugcommands.py are sorted
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30435
diff changeset
43
d955cebd8d6a tests: add test that @commands in debugcommands.py are sorted
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30435
diff changeset
44 >>> import re
d955cebd8d6a tests: add test that @commands in debugcommands.py are sorted
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30435
diff changeset
45 >>> commands = []
d955cebd8d6a tests: add test that @commands in debugcommands.py are sorted
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30435
diff changeset
46 >>> with open('mercurial/debugcommands.py', 'rb') as fh:
d955cebd8d6a tests: add test that @commands in debugcommands.py are sorted
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30435
diff changeset
47 ... for line in fh:
d955cebd8d6a tests: add test that @commands in debugcommands.py are sorted
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30435
diff changeset
48 ... m = re.match("^@command\('([a-z]+)", line)
d955cebd8d6a tests: add test that @commands in debugcommands.py are sorted
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30435
diff changeset
49 ... if m:
d955cebd8d6a tests: add test that @commands in debugcommands.py are sorted
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30435
diff changeset
50 ... commands.append(m.group(1))
d955cebd8d6a tests: add test that @commands in debugcommands.py are sorted
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30435
diff changeset
51 >>> scommands = list(sorted(commands))
d955cebd8d6a tests: add test that @commands in debugcommands.py are sorted
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30435
diff changeset
52 >>> for i, command in enumerate(scommands):
d955cebd8d6a tests: add test that @commands in debugcommands.py are sorted
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30435
diff changeset
53 ... if command != commands[i]:
d955cebd8d6a tests: add test that @commands in debugcommands.py are sorted
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30435
diff changeset
54 ... print('commands in debugcommands.py not sorted; first differing '
d955cebd8d6a tests: add test that @commands in debugcommands.py are sorted
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30435
diff changeset
55 ... 'command is %s; expected %s' % (commands[i], command))
d955cebd8d6a tests: add test that @commands in debugcommands.py are sorted
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30435
diff changeset
56 ... break