diff options
author | Junio C Hamano <gitster@pobox.com> | 2008-10-19 22:51:17 -0700 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2008-10-19 22:51:17 -0700 |
commit | 5610e3b0315d652d6b8e6535afe0e7e461c8a0a0 (patch) | |
tree | 7d59f72be09c3cd3c58ee653d76211aabcc95303 /t | |
parent | 09cff066f65361b514dd36b03a822cfb40534f12 (diff) | |
download | git-5610e3b0315d652d6b8e6535afe0e7e461c8a0a0.tar.gz git-5610e3b0315d652d6b8e6535afe0e7e461c8a0a0.tar.xz |
Fix testcase failure when extended attributes are in use
06cbe855 (Make core.sharedRepository more generic, 2008-04-16) made
several testcases in t1301-shared-repo.sh which fail if on a system
which creates files with extended attributes (e.g. SELinux), since ls
appends a '+' sign to the permission set in such cases. In fact,
POSIX.1 allows ls to add a single printable character after the usual
3x3 permission bits to show that an optional alternate/additional access
method is associated with the path.
This fixes the testcase to strip any such sign prior to verifying the
permission set.
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Tested-by: Deskin Miller <deskinm@umich.edu>
Diffstat (limited to 't')
-rwxr-xr-x | t/t1301-shared-repo.sh | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/t/t1301-shared-repo.sh b/t/t1301-shared-repo.sh index 2275caa31..653362ba2 100755 --- a/t/t1301-shared-repo.sh +++ b/t/t1301-shared-repo.sh @@ -20,6 +20,10 @@ test_expect_success 'shared = 0400 (faulty permission u-w)' ' test $ret != "0" ' +modebits () { + ls -l "$1" | sed -e 's|^\(..........\).*|\1|' +} + for u in 002 022 do test_expect_success "shared=1 does not clear bits preset by umask $u" ' @@ -85,8 +89,7 @@ do rm -f .git/info/refs && git update-server-info && - actual="$(ls -l .git/info/refs)" && - actual=${actual%% *} && + actual="$(modebits .git/info/refs)" && test "x$actual" = "x-$y" || { ls -lt .git/info false @@ -98,8 +101,7 @@ do rm -f .git/info/refs && git update-server-info && - actual="$(ls -l .git/info/refs)" && - actual=${actual%% *} && + actual="$(modebits .git/info/refs)" && test "x$actual" = "x-$x" || { ls -lt .git/info false |