aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorElliott Hughes <enh@google.com>2019-07-26 11:05:25 -0700
committerRob Landley <rob@landley.net>2019-07-26 21:19:20 -0500
commitb942b7f88a59aec20303212285cafad7c52ed560 (patch)
tree074c6412ee3094c1ffd03cafcc06f37549fcedf8
parent26f3ca413c7fa7b1ba380f3c951004c109a47294 (diff)
downloadtoybox-b942b7f88a59aec20303212285cafad7c52ed560.tar.gz
truncate.test: work around ext extended attributes space usage.
Weaken the test slightly so that the extra 4KiB used for SELinux is ignored. Unfortunately all the du tests suffer the same problem, and I'm less sure what to do there. Mounting a read-only file system without the extended attributes might be the best idea? But since this test modifies the file system...
-rwxr-xr-xtests/truncate.test7
1 files changed, 5 insertions, 2 deletions
diff --git a/tests/truncate.test b/tests/truncate.test
index 1d19aa1b..253af626 100755
--- a/tests/truncate.test
+++ b/tests/truncate.test
@@ -8,8 +8,11 @@ SIZE='&& stat -c %s freep'
testing "0" "truncate -s 0 freep $SIZE" "0\n" "" ""
testing "12345" "truncate -s 12345 freep $SIZE" "12345\n" "" ""
testing "1m" "truncate -s 1m freep $SIZE" "1048576\n" "" ""
-testing "is sparse" "truncate -s 1g freep && stat -c %b freep" \
- "0\n" "" ""
+# We can't test against 0 because Android filesystems use an extra 4KiB for
+# extended attributes (SELinux).
+testing "is sparse" "truncate -s 1g freep && [ $(stat -c %b freep) -le 8 ] &&
+ echo okay" \
+ "okay\n" "" ""
testing "+" "truncate -s 1k freep && truncate -s +1k freep $SIZE" \
"2048\n" "" ""
testing "-" "truncate -s 4k freep && truncate -s -1k freep $SIZE" \