]> git.ipfire.org Git - thirdparty/util-linux.git/commitdiff
tests, skip fallocate for unsupported filesystems
authorRuediger Meier <ruediger.meier@ga-group.nl>
Tue, 11 Mar 2014 14:53:19 +0000 (15:53 +0100)
committerRuediger Meier <ruediger.meier@ga-group.nl>
Tue, 11 Mar 2014 14:53:19 +0000 (15:53 +0100)
tests/ts/misc/fallocate

index cbb25d8e87e46b758d4761df86d9f94e32e4f4e1..8888bf1c11b0d11cb16712ac5137770ace22f72c 100755 (executable)
@@ -23,8 +23,16 @@ ts_check_test_command "$TS_CMD_FALLOCATE"
 IMAGE=${TS_OUTDIR}/${TS_TESTNAME}.file
 rm -f $IMAGE
 
-$TS_CMD_FALLOCATE -o 128 -l 256 $IMAGE > $TS_OUTPUT 2>&1
-stat -c "%s" $IMAGE > $TS_OUTPUT 2>&1
+# fs type of $TS_OUTDIR, could be used to skip this test early
+fs_type=$(${TS_CMD_FINDMNT} -n -o FSTYPE -T ${TS_OUTDIR})
+
+if $TS_CMD_FALLOCATE -o 128 -l 256 $IMAGE > $TS_OUTPUT 2>&1; then
+       stat -c "%s" $IMAGE >> $TS_OUTPUT 2>&1
+else
+       test "$(<$TS_OUTPUT)" \
+            = "fallocate: fallocate failed: Operation not supported" \
+       && ts_skip "filesystem '${fs_type}' not supported"
+fi
 
 rm -f $IMAGE