tests/test-check-pyflakes.t
author Manuel Jacob <me@manueljacob.de>
Fri, 06 Mar 2020 23:04:58 +0100
changeset 44461 e397c6d74652
parent 43496 2ade00f3b03b
child 44937 f4361aed565d
child 44957 1ca0d5cae9bc
permissions -rw-r--r--
tests: use pyflakes module instead of pyflakes executable This results in that the pyflakes version specific to the configured Python version is used. This way, both the Python 2-specific and the Python 3-specific pyflakes are run by the test suite (depending on the configured Python version). For downstream projects which are using Mercurial’s test infrastructure and are not yet ported to Python 3 (e.g. hg-git) it ensures that the correct pyflakes version is run even when the system’s default pyflakes is the Python 3-specific one.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
29138
a29f071751df tests: mark test-check-pyflakes.t as requiring hg1.0+
timeless <timeless@mozdev.org>
parents: 27285
diff changeset
     1
#require test-repo pyflakes hg10
21208
0e1cbd3d52f7 tests: add repository check for pyflakes test
Matt Mackall <mpm@selenic.com>
parents: 20644
diff changeset
     2
29219
3c9066ed557c tests: silence test-repo obsolete warning
timeless <timeless@mozdev.org>
parents: 29138
diff changeset
     3
  $ . "$TESTDIR/helpers-testrepo.sh"
19377
0cb996ee8c6d tests: run pyflakes on files from manifest which could be python files
Simon Heimberg <simohe@besonet.ch>
parents: 16350
diff changeset
     4
0cb996ee8c6d tests: run pyflakes on files from manifest which could be python files
Simon Heimberg <simohe@besonet.ch>
parents: 16350
diff changeset
     5
run pyflakes on all tracked files ending in .py or without a file ending
0cb996ee8c6d tests: run pyflakes on files from manifest which could be python files
Simon Heimberg <simohe@besonet.ch>
parents: 16350
diff changeset
     6
(skipping binary file random-seed)
21208
0e1cbd3d52f7 tests: add repository check for pyflakes test
Matt Mackall <mpm@selenic.com>
parents: 20644
diff changeset
     7
33367
6029939f7e98 filterpyflakes: move self-test into test file
Augie Fackler <raf@durin42.com>
parents: 33204
diff changeset
     8
  $ cat > test.py <<EOF
6029939f7e98 filterpyflakes: move self-test into test file
Augie Fackler <raf@durin42.com>
parents: 33204
diff changeset
     9
  > print(undefinedname)
6029939f7e98 filterpyflakes: move self-test into test file
Augie Fackler <raf@durin42.com>
parents: 33204
diff changeset
    10
  > EOF
6029939f7e98 filterpyflakes: move self-test into test file
Augie Fackler <raf@durin42.com>
parents: 33204
diff changeset
    11
  $ pyflakes test.py 2>/dev/null | "$TESTDIR/filterpyflakes.py"
6029939f7e98 filterpyflakes: move self-test into test file
Augie Fackler <raf@durin42.com>
parents: 33204
diff changeset
    12
  test.py:1: undefined name 'undefinedname'
6029939f7e98 filterpyflakes: move self-test into test file
Augie Fackler <raf@durin42.com>
parents: 33204
diff changeset
    13
  
33418
1f3b54f392b0 test-check-pyflakes: do not leave test.py in the repo
Jun Wu <quark@fb.com>
parents: 33367
diff changeset
    14
  $ cd "`dirname "$TESTDIR"`"
33367
6029939f7e98 filterpyflakes: move self-test into test file
Augie Fackler <raf@durin42.com>
parents: 33204
diff changeset
    15
33204
ddd65b4f3ae6 tests: alias syshg and syshgenv so they can be switched conditionally
Yuya Nishihara <yuya@tcha.org>
parents: 33116
diff changeset
    16
  $ testrepohg locate 'set:**.py or grep("^#!.*python")' \
33116
6c113a7dec52 tests: use the system hg for examining the local repository
Adam Simpkins <simpkins@fb.com>
parents: 32510
diff changeset
    17
  > -X hgext/fsmonitor/pywatchman \
30894
5b60464efbde tests: exclude python-zstandard from pyflakes analysis
Augie Fackler <augie@google.com>
parents: 30655
diff changeset
    18
  > -X mercurial/pycompat.py -X contrib/python-zstandard \
37127
0e06d8086295 cbor: fix core test-check*
Pulkit Goyal <7895pulkit@gmail.com>
parents: 33418
diff changeset
    19
  > -X mercurial/thirdparty/cbor \
37625
3ccaf995f549 tests: silence pyflakes for thirdparty/concurrent
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37182
diff changeset
    20
  > -X mercurial/thirdparty/concurrent \
37182
559069689121 tests: ignore zope packages when running pyflakes
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37127
diff changeset
    21
  > -X mercurial/thirdparty/zope \
29584
06587edd1233 pycompat: make pycompat demandimport friendly
Pulkit Goyal <7895pulkit@gmail.com>
parents: 29232
diff changeset
    22
  > 2>/dev/null \
44461
e397c6d74652 tests: use pyflakes module instead of pyflakes executable
Manuel Jacob <me@manueljacob.de>
parents: 43496
diff changeset
    23
  > | xargs $PYTHON -m pyflakes 2>/dev/null | "$TESTDIR/filterpyflakes.py"
43068
094d0f4a8edd tests: allow xrange warning from perf.py
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37625
diff changeset
    24
  contrib/perf.py:*: undefined name 'xrange' (glob) (?)
43069
e554cfd93975 hgweb: use importlib.reload() if available
Gregory Szorc <gregory.szorc@gmail.com>
parents: 43068
diff changeset
    25
  mercurial/hgweb/server.py:*: undefined name 'reload' (glob) (?)
43109
f244da1fc4c6 tests: allow warning about file
Gregory Szorc <gregory.szorc@gmail.com>
parents: 43069
diff changeset
    26
  mercurial/util.py:*: undefined name 'file' (glob) (?)
43496
2ade00f3b03b encoding: add comment-based type hints for pytype
Augie Fackler <augie@google.com>
parents: 43109
diff changeset
    27
  mercurial/encoding.py:*: undefined name 'localstr' (glob) (?)
22053
4354b1e35f53 tests: fix pyflakes test whitespace breakage
Matt Mackall <mpm@selenic.com>
parents: 22047
diff changeset
    28