tests/test-check-code-hg.t
author Olle Lundberg <geek@nerd.sh>
Wed, 26 Mar 2014 11:59:13 +0100
changeset 20831 864c56cb8945
parent 20239 16b5f498f49c
child 21223 c35c027f5f43
permissions -rw-r--r--
contrib: don't hardcode path to bash interpreter Use the env binary to figure out the correct bash to use. Certain systems ships with an ancient version of bash, but the user might have installed a newer one that is earlier in $PATH. For example the current version of Mac OS X ships version 3.2.51 of bash, which does not understand new fancy builtins such as readarray. A user might install a newer version of bash, use that as their shell and add that path before bin.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
15557
7bb5ed61b74c tests: convert test-check-code-hg.py to .t
Mads Kiilerich <mads@kiilerich.com>
parents: 11771
diff changeset
     1
  $ check_code="$TESTDIR"/../contrib/check-code.py
7bb5ed61b74c tests: convert test-check-code-hg.py to .t
Mads Kiilerich <mads@kiilerich.com>
parents: 11771
diff changeset
     2
  $ cd "$TESTDIR"/..
18601
ce844e8e8af2 tests: guard against obsolete markers in the hg repo itself
Kevin Bullock <kbullock@ringworld.org>
parents: 18596
diff changeset
     3
  $ if hg identify -q > /dev/null 2>&1; then :
16485
f48b075ff088 tests: solaris sh can not negate exit status with '!'
Mads Kiilerich <mads@kiilerich.com>
parents: 16306
diff changeset
     4
  > else
16179
be6ac2ecc7f8 test-check-code-hg: skip test if not in a working dir (issue3248).
Greg Ward <greg@gerg.ca>
parents: 16156
diff changeset
     5
  >     echo "skipped: not a Mercurial working dir" >&2
be6ac2ecc7f8 test-check-code-hg: skip test if not in a working dir (issue3248).
Greg Ward <greg@gerg.ca>
parents: 16156
diff changeset
     6
  >     exit 80
be6ac2ecc7f8 test-check-code-hg: skip test if not in a working dir (issue3248).
Greg Ward <greg@gerg.ca>
parents: 16156
diff changeset
     7
  > fi
15558
c6b600d2348c tests: run check-code with warnings and maintain a whitelist
Mads Kiilerich <mads@kiilerich.com>
parents: 15557
diff changeset
     8
19384
96fd9af75834 tests: check-code all python files in one run
Simon Heimberg <simohe@besonet.ch>
parents: 19321
diff changeset
     9
Prepare check for Python files without py extension
19022
cba222f01056 tests: run check-code on Python files without .py extension
Mads Kiilerich <madski@unity3d.com>
parents: 18602
diff changeset
    10
cba222f01056 tests: run check-code on Python files without .py extension
Mads Kiilerich <madski@unity3d.com>
parents: 18602
diff changeset
    11
  $ cp \
cba222f01056 tests: run check-code on Python files without .py extension
Mads Kiilerich <madski@unity3d.com>
parents: 18602
diff changeset
    12
  >   hg \
cba222f01056 tests: run check-code on Python files without .py extension
Mads Kiilerich <madski@unity3d.com>
parents: 18602
diff changeset
    13
  >   hgweb.cgi \
cba222f01056 tests: run check-code on Python files without .py extension
Mads Kiilerich <madski@unity3d.com>
parents: 18602
diff changeset
    14
  >   contrib/convert-repo \
cba222f01056 tests: run check-code on Python files without .py extension
Mads Kiilerich <madski@unity3d.com>
parents: 18602
diff changeset
    15
  >   contrib/dumprevlog \
cba222f01056 tests: run check-code on Python files without .py extension
Mads Kiilerich <madski@unity3d.com>
parents: 18602
diff changeset
    16
  >   contrib/hgweb.fcgi \
cba222f01056 tests: run check-code on Python files without .py extension
Mads Kiilerich <madski@unity3d.com>
parents: 18602
diff changeset
    17
  >   contrib/hgweb.wsgi \
cba222f01056 tests: run check-code on Python files without .py extension
Mads Kiilerich <madski@unity3d.com>
parents: 18602
diff changeset
    18
  >   contrib/simplemerge \
cba222f01056 tests: run check-code on Python files without .py extension
Mads Kiilerich <madski@unity3d.com>
parents: 18602
diff changeset
    19
  >   contrib/undumprevlog \
19321
2d03c8da7d98 tests: check-code more python files without py extension
simon@laptop-tosh
parents: 19022
diff changeset
    20
  >   i18n/hggettext \
2d03c8da7d98 tests: check-code more python files without py extension
simon@laptop-tosh
parents: 19022
diff changeset
    21
  >   i18n/posplit \
2d03c8da7d98 tests: check-code more python files without py extension
simon@laptop-tosh
parents: 19022
diff changeset
    22
  >   tests/hghave \
2d03c8da7d98 tests: check-code more python files without py extension
simon@laptop-tosh
parents: 19022
diff changeset
    23
  >   tests/dummyssh \
19022
cba222f01056 tests: run check-code on Python files without .py extension
Mads Kiilerich <madski@unity3d.com>
parents: 18602
diff changeset
    24
  >   "$TESTTMP"/
19385
c455e703348e tests: rename files to py extension instead of copying a 2nd time
Simon Heimberg <simohe@besonet.ch>
parents: 19384
diff changeset
    25
  $ for f in "$TESTTMP"/*; do mv "$f" "$f.py"; done
19384
96fd9af75834 tests: check-code all python files in one run
Simon Heimberg <simohe@besonet.ch>
parents: 19321
diff changeset
    26
96fd9af75834 tests: check-code all python files in one run
Simon Heimberg <simohe@besonet.ch>
parents: 19321
diff changeset
    27
New errors are not allowed. Warnings are strongly discouraged.
20239
16b5f498f49c check-code: always report when a file is skipped by "no-check-code"
Simon Heimberg <simohe@besonet.ch>
parents: 19495
diff changeset
    28
(The writing "no-che?k-code" is for not skipping this file when checking.)
19384
96fd9af75834 tests: check-code all python files in one run
Simon Heimberg <simohe@besonet.ch>
parents: 19321
diff changeset
    29
19495
9aee3d014394 tests: test-check-code-hg.t works for all files to check
Simon Heimberg <simohe@besonet.ch>
parents: 19386
diff changeset
    30
  $ { hg manifest 2>/dev/null; ls "$TESTTMP"/*.py | sed 's-\\-/-g'; } |
9aee3d014394 tests: test-check-code-hg.t works for all files to check
Simon Heimberg <simohe@besonet.ch>
parents: 19386
diff changeset
    31
  >   xargs "$check_code" --warnings --per-file=0 || false
20239
16b5f498f49c check-code: always report when a file is skipped by "no-check-code"
Simon Heimberg <simohe@besonet.ch>
parents: 19495
diff changeset
    32
  Skipping hgext/zeroconf/Zeroconf.py it has no-che?k-code (glob)
16b5f498f49c check-code: always report when a file is skipped by "no-check-code"
Simon Heimberg <simohe@besonet.ch>
parents: 19495
diff changeset
    33
  Skipping i18n/polib.py it has no-che?k-code (glob)
16b5f498f49c check-code: always report when a file is skipped by "no-check-code"
Simon Heimberg <simohe@besonet.ch>
parents: 19495
diff changeset
    34
  Skipping mercurial/httpclient/__init__.py it has no-che?k-code (glob)
16b5f498f49c check-code: always report when a file is skipped by "no-check-code"
Simon Heimberg <simohe@besonet.ch>
parents: 19495
diff changeset
    35
  Skipping mercurial/httpclient/_readers.py it has no-che?k-code (glob)
16b5f498f49c check-code: always report when a file is skipped by "no-check-code"
Simon Heimberg <simohe@besonet.ch>
parents: 19495
diff changeset
    36
  Skipping mercurial/httpclient/socketutil.py it has no-che?k-code (glob)