view tests/test-check-shbang.t @ 51610:6c39edd1d348 stable

re2: make errors quiet By default, the re2 library will output error on its own instead of keeping the error in an exception. This make re2 printing spurious error before fallback to the stdlib remodule that may accept the pattern or also fails to parse it and raise a proper error that will be handled by Mercurial. So we also pass an Option object that changes this default.
author Pierre-Yves David <pierre-yves.david@octobus.net>
date Thu, 02 May 2024 02:20:42 +0200
parents 37de1a154472
children
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-format.t \
  > -X tests/test-check-module-imports.t \
  > -X tests/test-check-pyflakes.t \
  > -X tests/test-check-shbang.t \
  > -X tests/test-highlight.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]