view tests/test-check-shbang.t @ 37717:0664be4f0c1f

hg: pass command intents to repo/peer creation (API) The previous commit introduced a mechanism to declare command intents. This commit changes the repository and peer instantiation mechanism so the intents are passed down to each repository and peer type so they can do with them whatever they please. Currently, nobody does anything with any intent. Differential Revision: https://phab.mercurial-scm.org/D3377
author Gregory Szorc <gregory.szorc@gmail.com>
date Sat, 14 Apr 2018 09:57:44 -0700
parents ddd65b4f3ae6
children 2d8d4e08c493
line wrap: on
line source

#require test-repo

  $ . "$TESTDIR/helpers-testrepo.sh"
  $ cd "`dirname "$TESTDIR"`"

look for python scripts that do not use /usr/bin/env

  $ testrepohg files 'set:grep(r"^#!.*?python") and not grep(r"^#!/usr/bi{1}n/env python") - **/*.t'
  [1]

In tests, enforce $PYTHON and *not* /usr/bin/env python or similar:
  $ testrepohg files 'set:grep(r"#!.*?python") and **/*.t' \
  > -X tests/test-check-execute.t \
  > -X tests/test-check-module-imports.t \
  > -X tests/test-check-pyflakes.t \
  > -X tests/test-check-shbang.t
  [1]

The above exclusions are because they're looking for files that
contain Python but don't end in .py - please avoid adding more.

look for shell scripts that do not use /bin/sh

  $ testrepohg files 'set:grep(r"^#!.*/bi{1}n/sh") and not grep(r"^#!/bi{1}n/sh")'
  [1]