summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rwxr-xr-xtests/cp/fiemap-empty7
-rw-r--r--tests/init.cfg8
2 files changed, 15 insertions, 0 deletions
diff --git a/tests/cp/fiemap-empty b/tests/cp/fiemap-empty
index 203619a67..42d816bb0 100755
--- a/tests/cp/fiemap-empty
+++ b/tests/cp/fiemap-empty
@@ -31,6 +31,13 @@ fallocate -l 1 -n falloc.test ||
skip_test_ 'this file system lacks FALLOCATE support'
rm falloc.test
+# Require more space than we'll actually use, so that
+# tests run in parallel do not run out of space.
+# Otherwise, with inadequate space, simply running the following
+# fallocate command would induce a temporary disk-full condition,
+# which would cause failure of unrelated tests run in parallel.
+require_file_system_bytes_free_ 800000000
+
fallocate -l 600000000 space.test ||
skip_test_ 'this test needs at least 600MB free space'
diff --git a/tests/init.cfg b/tests/init.cfg
index 07114555c..92f841f94 100644
--- a/tests/init.cfg
+++ b/tests/init.cfg
@@ -151,6 +151,14 @@ require_built_()
test $skip_ = yes && skip_test_ "required program(s) not built"
}
+require_file_system_bytes_free_()
+{
+ local req=$1
+ local expr=$(stat -f --printf "$req / %S <= %a" .)
+ awk "BEGIN{ exit !($expr) }" \
+ || skip_test_ "this test needs at least $req bytes of free space"
+}
+
uid_is_privileged_()
{
# Make sure id -u succeeds.