Rob Landley | 789665d | 2015-04-28 12:18:17 -0500 | [diff] [blame] | 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 "truncate 0" "truncate -s 0 freep $SIZE" "0\n" "" "" |
| 9 | testing "truncate 12345" "truncate -s 12345 freep $SIZE" "12345\n" "" "" |
| 10 | testing "truncate 1m" "truncate -s 1m freep $SIZE" "1048576\n" "" "" |
| 11 | testing "truncate is sparse" "truncate -s 1g freep && stat -c %b freep" \ |
| 12 | "0\n" "" "" |
| 13 | testing "truncate +" "truncate -s 1k freep && truncate -s +1k freep $SIZE" \ |
| 14 | "2048\n" "" "" |
| 15 | testing "truncate -" "truncate -s 4k freep && truncate -s -1k freep $SIZE" \ |
| 16 | "3072\n" "" "" |
| 17 | testing "truncate < hit" \ |
| 18 | "truncate -s 5k freep && truncate -s \<4k freep $SIZE" "4096\n" "" "" |
| 19 | testing "truncate < miss" \ |
| 20 | "truncate -s 4k freep && truncate -s \<6k freep $SIZE" "4096\n" "" "" |
| 21 | testing "truncate > hit" \ |
| 22 | "truncate -s 3k freep && truncate -s \>4k freep $SIZE" "4096\n" "" "" |
| 23 | testing "truncate > miss" \ |
| 24 | "truncate -s 4k freep && truncate -s \>2k freep $SIZE" "4096\n" "" "" |
| 25 | testing "truncate /" "truncate -s 7k freep && truncate -s /3k freep $SIZE" \ |
| 26 | "6144\n" "" "" |
| 27 | testing "truncate %" "truncate -s 7k freep && truncate -s %3k freep $SIZE" \ |
| 28 | "9216\n" "" "" |