OSDN Git Service

Merge branch 'master' of https://android.googlesource.com/platform/external/toybox...
[android-x86/external-toybox.git] / tests / truncate.test
1 #!/bin/bash
2
3 [ -f testing.sh ] && . testing.sh
4
5 #testing "name" "command" "result" "infile" "stdin"
6
7 SIZE='&& stat -c %s freep'
8 testing "0" "truncate -s 0 freep $SIZE" "0\n" "" ""
9 testing "12345" "truncate -s 12345 freep $SIZE" "12345\n" "" ""
10 testing "1m" "truncate -s 1m freep $SIZE" "1048576\n" "" ""
11 testing "is sparse" "truncate -s 1g freep && stat -c %b freep" \
12         "0\n" "" ""
13 testing "+" "truncate -s 1k freep && truncate -s +1k freep $SIZE" \
14         "2048\n" "" ""
15 testing "-" "truncate -s 4k freep && truncate -s -1k freep $SIZE" \
16         "3072\n" "" ""
17 testing "< hit" \
18         "truncate -s 5k freep && truncate -s \<4k freep $SIZE" "4096\n" "" ""
19 testing "< miss" \
20         "truncate -s 4k freep && truncate -s \<6k freep $SIZE" "4096\n" "" ""
21 testing "> hit" \
22         "truncate -s 3k freep && truncate -s \>4k freep $SIZE" "4096\n" "" ""
23 testing "> miss" \
24         "truncate -s 4k freep && truncate -s \>2k freep $SIZE" "4096\n" "" ""
25 testing "/" "truncate -s 7k freep && truncate -s /3k freep $SIZE" \
26         "6144\n" "" ""
27 testing "%" "truncate -s 7k freep && truncate -s %3k freep $SIZE" \
28         "9216\n" "" ""