diff options
author | 2021-02-05 16:31:22 -0800 | |
---|---|---|
committer | 2021-02-05 16:31:23 -0800 | |
commit | 801e89668330f6d66cd10ba06926ffd7e0788b5f (patch) | |
tree | 430f6a97aa237510da2406eb4968d6fa344da2a4 /t | |
parent | Merge branch 'en/stash-apply-sparse-checkout' into maint (diff) | |
parent | t4129: don't fail if setgid is set in the test directory (diff) | |
download | tgif-801e89668330f6d66cd10ba06926ffd7e0788b5f.tar.xz |
Merge branch 'mt/t4129-with-setgid-dir' into maint
Some tests expect that "ls -l" output has either '-' or 'x' for
group executable bit, but setgid bit can be inherited from parent
directory and make these fields 'S' or 's' instead, causing test
failures.
* mt/t4129-with-setgid-dir:
t4129: don't fail if setgid is set in the test directory
Diffstat (limited to 't')
-rw-r--r-- | t/test-lib-functions.sh | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/t/test-lib-functions.sh b/t/test-lib-functions.sh index 999982fe4a..2f08ce7cba 100644 --- a/t/test-lib-functions.sh +++ b/t/test-lib-functions.sh @@ -367,9 +367,14 @@ test_chmod () { git update-index --add "--chmod=$@" } -# Get the modebits from a file or directory. +# Get the modebits from a file or directory, ignoring the setgid bit (g+s). +# This bit is inherited by subdirectories at their creation. So we remove it +# from the returning string to prevent callers from having to worry about the +# state of the bit in the test directory. +# test_modebits () { - ls -ld "$1" | sed -e 's|^\(..........\).*|\1|' + ls -ld "$1" | sed -e 's|^\(..........\).*|\1|' \ + -e 's|^\(......\)S|\1-|' -e 's|^\(......\)s|\1x|' } # Unset a configuration variable, but don't fail if it doesn't exist. |