tests/test-check-shbang.t
author Pierre-Yves David <pierre-yves.david@octobus.net>
Thu, 02 Feb 2023 17:35:01 +0100
changeset 50596 4a60280b5653
parent 49950 37de1a154472
permissions -rw-r--r--
safehasattr: pass attribute name as string instead of bytes This is a step toward replacing `util.safehasattr` usage with plain `hasattr`. The builtin function behave poorly in Python2 but this was fixed in Python3. These change are done one by one as they tend to have a small odd to trigger puzzling breackage.
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: 33116
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
32939
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: 33116
diff changeset
    12
  $ testrepohg files 'set:grep(r"#!.*?python") and **/*.t' \
32939
cad62cb3c84c tests: enforce use of $PYTHON in tests
Augie Fackler <augie@google.com>
parents: 29515
diff changeset
    13
  > -X tests/test-check-execute.t \
43692
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 \
32939
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 \
49950
37de1a154472 tests: make sure pygments can detect python script without extension
Anton Shestakov <av6@dwimlabs.net>
parents: 43692
diff changeset
    17
  > -X tests/test-check-shbang.t \
37de1a154472 tests: make sure pygments can detect python script without extension
Anton Shestakov <av6@dwimlabs.net>
parents: 43692
diff changeset
    18
  > -X tests/test-highlight.t
32939
cad62cb3c84c tests: enforce use of $PYTHON in tests
Augie Fackler <augie@google.com>
parents: 29515
diff changeset
    19
  [1]
cad62cb3c84c tests: enforce use of $PYTHON in tests
Augie Fackler <augie@google.com>
parents: 29515
diff changeset
    20
cad62cb3c84c tests: enforce use of $PYTHON in tests
Augie Fackler <augie@google.com>
parents: 29515
diff changeset
    21
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
    22
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
    23
28879
8c1759a2bdf4 tests: add new test for #! shebang lines
timeless <timeless@mozdev.org>
parents: 27569
diff changeset
    24
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
    25
33204
ddd65b4f3ae6 tests: alias syshg and syshgenv so they can be switched conditionally
Yuya Nishihara <yuya@tcha.org>
parents: 33116
diff changeset
    26
  $ 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
    27
  [1]