tests/test-check-shbang.t
author Pierre-Yves David <pierre-yves.david@octobus.net>
Tue, 12 Jan 2021 18:19:17 +0100
changeset 46249 3eb33aa237c0
parent 43732 2d8d4e08c493
child 49642 37de1a154472
permissions -rw-r--r--
persistent-nodemap: test it (does not) exist after a local clone This is currently buggy. We add a test before fixing the bug. Differential Revision: https://phab.mercurial-scm.org/D9733
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
28879
8c1759a2bdf4 tests: add new test for #! shebang lines
timeless <timeless@mozdev.org>
parents: 27569
diff changeset
     1
#require test-repo
27569
b3eba79b7e04 tests: add test-check-execute.t
timeless <timeless@mozdev.org>
parents:
diff changeset
     2
29219
3c9066ed557c tests: silence test-repo obsolete warning
timeless <timeless@mozdev.org>
parents: 28879
diff changeset
     3
  $ . "$TESTDIR/helpers-testrepo.sh"
27569
b3eba79b7e04 tests: add test-check-execute.t
timeless <timeless@mozdev.org>
parents:
diff changeset
     4
  $ cd "`dirname "$TESTDIR"`"
b3eba79b7e04 tests: add test-check-execute.t
timeless <timeless@mozdev.org>
parents:
diff changeset
     5
28879
8c1759a2bdf4 tests: add new test for #! shebang lines
timeless <timeless@mozdev.org>
parents: 27569
diff changeset
     6
look for python scripts that do not use /usr/bin/env
27569
b3eba79b7e04 tests: add test-check-execute.t
timeless <timeless@mozdev.org>
parents:
diff changeset
     7
33204
ddd65b4f3ae6 tests: alias syshg and syshgenv so they can be switched conditionally
Yuya Nishihara <yuya@tcha.org>
parents: 33128
diff changeset
     8
  $ testrepohg files 'set:grep(r"^#!.*?python") and not grep(r"^#!/usr/bi{1}n/env python") - **/*.t'
27569
b3eba79b7e04 tests: add test-check-execute.t
timeless <timeless@mozdev.org>
parents:
diff changeset
     9
  [1]
b3eba79b7e04 tests: add test-check-execute.t
timeless <timeless@mozdev.org>
parents:
diff changeset
    10
32957
cad62cb3c84c tests: enforce use of $PYTHON in tests
Augie Fackler <augie@google.com>
parents: 29515
diff changeset
    11
In tests, enforce $PYTHON and *not* /usr/bin/env python or similar:
33204
ddd65b4f3ae6 tests: alias syshg and syshgenv so they can be switched conditionally
Yuya Nishihara <yuya@tcha.org>
parents: 33128
diff changeset
    12
  $ testrepohg files 'set:grep(r"#!.*?python") and **/*.t' \
32957
cad62cb3c84c tests: enforce use of $PYTHON in tests
Augie Fackler <augie@google.com>
parents: 29515
diff changeset
    13
  > -X tests/test-check-execute.t \
43732
2d8d4e08c493 tests: verify that Python scripts are blackened
Gregory Szorc <gregory.szorc@gmail.com>
parents: 33204
diff changeset
    14
  > -X tests/test-check-format.t \
32957
cad62cb3c84c tests: enforce use of $PYTHON in tests
Augie Fackler <augie@google.com>
parents: 29515
diff changeset
    15
  > -X tests/test-check-module-imports.t \
cad62cb3c84c tests: enforce use of $PYTHON in tests
Augie Fackler <augie@google.com>
parents: 29515
diff changeset
    16
  > -X tests/test-check-pyflakes.t \
cad62cb3c84c tests: enforce use of $PYTHON in tests
Augie Fackler <augie@google.com>
parents: 29515
diff changeset
    17
  > -X tests/test-check-shbang.t
cad62cb3c84c tests: enforce use of $PYTHON in tests
Augie Fackler <augie@google.com>
parents: 29515
diff changeset
    18
  [1]
cad62cb3c84c tests: enforce use of $PYTHON in tests
Augie Fackler <augie@google.com>
parents: 29515
diff changeset
    19
cad62cb3c84c tests: enforce use of $PYTHON in tests
Augie Fackler <augie@google.com>
parents: 29515
diff changeset
    20
The above exclusions are because they're looking for files that
cad62cb3c84c tests: enforce use of $PYTHON in tests
Augie Fackler <augie@google.com>
parents: 29515
diff changeset
    21
contain Python but don't end in .py - please avoid adding more.
cad62cb3c84c tests: enforce use of $PYTHON in tests
Augie Fackler <augie@google.com>
parents: 29515
diff changeset
    22
28879
8c1759a2bdf4 tests: add new test for #! shebang lines
timeless <timeless@mozdev.org>
parents: 27569
diff changeset
    23
look for shell scripts that do not use /bin/sh
27569
b3eba79b7e04 tests: add test-check-execute.t
timeless <timeless@mozdev.org>
parents:
diff changeset
    24
33204
ddd65b4f3ae6 tests: alias syshg and syshgenv so they can be switched conditionally
Yuya Nishihara <yuya@tcha.org>
parents: 33128
diff changeset
    25
  $ testrepohg files 'set:grep(r"^#!.*/bi{1}n/sh") and not grep(r"^#!/bi{1}n/sh")'
27569
b3eba79b7e04 tests: add test-check-execute.t
timeless <timeless@mozdev.org>
parents:
diff changeset
    26
  [1]