]>
Commit | Line | Data |
---|---|---|
7e3a4f0a JSMR |
1 | # vim: filetype=sh |
2 | ||
3 | test_description="create fs image from tarball" | |
4 | if ! test -x "$DEBUGFS_EXE"; then | |
5 | echo "$test_name: $test_description: skipped (no debugfs)" | |
6 | return 0 | |
7 | fi | |
8 | if [ "$(grep -c 'define HAVE_ARCHIVE_H' ../lib/config.h)" -eq 0 ]; then | |
9 | echo "$test_name: skipped (no libarchive)" | |
10 | exit 0 | |
11 | fi | |
12 | ||
13 | OUT="$test_name.log" | |
14 | EXP="$test_dir/expect" | |
15 | ||
16 | perl "$test_dir/mktar.pl" \ | |
17 | | $MKE2FS -q -F -o Linux -T ext4 -O metadata_csum,64bit -E lazy_itable_init=1 -b 1024 -d - "$TMPFILE" 16384 > "$OUT" 2>&1 | |
18 | ||
19 | $DUMPE2FS "$TMPFILE" >> "$OUT" 2>&1 | |
20 | cat > "$TMPFILE.cmd" << 'ENDL' | |
21 | stat /dev/ | |
22 | stat /dev/console | |
23 | stat /dev/fd | |
24 | stat /dev/full | |
25 | stat /dev/null | |
26 | stat /dev/ptmx | |
27 | stat /dev/pts/ | |
28 | stat /dev/random | |
29 | stat /dev/shm/ | |
30 | stat /dev/stderr | |
31 | stat /dev/stdin | |
32 | stat /dev/stdout | |
33 | stat /dev/tty | |
34 | stat /dev/urandom | |
35 | stat /dev/zero | |
36 | ENDL | |
37 | $DEBUGFS -f "$TMPFILE.cmd" "$TMPFILE" 2>&1 | grep -E -v "(time|checksum):" >> "$OUT" | |
38 | ||
39 | $FSCK -f -n "$TMPFILE" >> "$OUT" 2>&1 | |
40 | ||
41 | sed -f "$cmd_dir/filter.sed" -f "$test_dir/output.sed" -e "s;$TMPFILE;test.img;" < "$OUT" > "$OUT.tmp" | |
42 | mv "$OUT.tmp" "$OUT" | |
43 | ||
44 | # Do the verification | |
45 | cmp -s "$OUT" "$EXP" | |
46 | status=$? | |
47 | ||
48 | if [ "$status" = 0 ] ; then | |
49 | echo "$test_name: $test_description: ok" | |
50 | touch "$test_name.ok" | |
51 | else | |
52 | echo "$test_name: $test_description: failed" | |
53 | diff $DIFF_OPTS "$EXP" "$OUT" > "$test_name.failed" | |
54 | fi | |
55 | ||
56 | rm -rf "$TMPFILE.cmd" | |
57 | unset OUT EXP |