summaryrefslogtreecommitdiff
path: root/tests/test-lib.sh
diff options
context:
space:
mode:
authorJim Meyering <meyering@redhat.com>2008-04-20 23:29:19 +0200
committerJim Meyering <meyering@redhat.com>2008-04-21 00:02:00 +0200
commit90bc2fe272debe8540a59b9a1e565c43e87e4635 (patch)
tree83a9f9df5273d37130d64cd707e87d75b902284c /tests/test-lib.sh
parentc51900a6bd655e7dd596fa6888a0e521e6b5a6bd (diff)
downloadcoreutils-90bc2fe272debe8540a59b9a1e565c43e87e4635.tar.xz
tests: convert umask-check to a function
* tests/test-lib.sh (working_umask_or_skip_): New function, from... * tests/umask-check: ...here. Remove file. * tests/Makefile.am (EXTRA_DIST): Remove umask-check. * tests/mkdir/perm: Use the function rather than sourcing the file. * tests/cp/cp-parents: Likewise. * tests/cp/parent-perm: Likewise. Bruno Haible reported that parent-perm was failing to run umask-check.
Diffstat (limited to 'tests/test-lib.sh')
-rw-r--r--tests/test-lib.sh17
1 files changed, 17 insertions, 0 deletions
diff --git a/tests/test-lib.sh b/tests/test-lib.sh
index 80621bb5f..8f56ab105 100644
--- a/tests/test-lib.sh
+++ b/tests/test-lib.sh
@@ -173,6 +173,23 @@ mkfifo_or_skip_()
fi
}
+# Skip the current test if umask doesn't work as usual.
+# This test should be run in the temporary directory that ends
+# up being removed via the trap commands.
+working_umask_or_skip_()
+{
+ umask 022
+ touch file1 file2
+ chmod 644 file2
+ perms=`ls -l file1 file2 | sed 's/ .*//' | uniq`
+ rm -f file1 file2
+
+ case $perms in
+ *'
+ '*) skip_test_ 'your build directory has unusual umask semantics'
+ esac
+}
+
test_dir_=$(pwd)
this_test_() { echo "./$0" | sed 's,.*/,,'; }