summaryrefslogtreecommitdiff
path: root/tests/test-lib.sh
diff options
context:
space:
mode:
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,.*/,,'; }