Skip to content

Commit

Permalink
t: add a function to check executable bit
Browse files Browse the repository at this point in the history
In line with our other helper functions for paths, let's add a function
to check whether a path is executable, and if not, print a suitable
error message.  Document this function, and note that it must only be
used under the POSIXPERM prerequisite, since it doesn't otherwise work
on Windows.

Signed-off-by: brian m. carlson <[email protected]>
Signed-off-by: Junio C Hamano <[email protected]>
  • Loading branch information
bk2204 authored and gitster committed Jun 27, 2023
1 parent 4db16f5 commit d6546af
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 0 deletions.
6 changes: 6 additions & 0 deletions t/README
Original file line number Diff line number Diff line change
Expand Up @@ -1098,6 +1098,12 @@ see test-lib-functions.sh for the full list and their options.
the symbolic link in the file system and a part that does; then only
the latter part need be protected by a SYMLINKS prerequisite (see below).

- test_path_is_executable

This tests whether a file is executable and prints an error message
if not. This must be used only under the POSIXPERM prerequisite
(see below).

- test_oid_init

This function loads facts and useful object IDs related to the hash
Expand Down
9 changes: 9 additions & 0 deletions t/test-lib-functions.sh
Original file line number Diff line number Diff line change
Expand Up @@ -901,6 +901,15 @@ test_path_is_symlink () {
fi
}

test_path_is_executable () {
test "$#" -ne 1 && BUG "1 param"
if ! test -x "$1"
then
echo "$1 is not executable"
false
fi
}

# Check if the directory exists and is empty as expected, barf otherwise.
test_dir_is_empty () {
test "$#" -ne 1 && BUG "1 param"
Expand Down

0 comments on commit d6546af

Please sign in to comment.