]> git.ipfire.org Git - thirdparty/e2fsprogs.git/commitdiff
debian: add autopkgtest files
authorTheodore Ts'o <tytso@mit.edu>
Mon, 6 Jan 2020 16:47:21 +0000 (11:47 -0500)
committerTheodore Ts'o <tytso@mit.edu>
Mon, 6 Jan 2020 20:31:39 +0000 (15:31 -0500)
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
debian/tests/control [new file with mode: 0644]
debian/tests/fuse2fs [new file with mode: 0755]
debian/tests/smoke [new file with mode: 0755]

diff --git a/debian/tests/control b/debian/tests/control
new file mode 100644 (file)
index 0000000..e149342
--- /dev/null
@@ -0,0 +1,6 @@
+Tests: smoke
+Depends: e2fsprogs
+
+Tests: fuse2fs
+Depends: fuse2fs, fuse3
+Restrictions: isolation-machine
diff --git a/debian/tests/fuse2fs b/debian/tests/fuse2fs
new file mode 100755 (executable)
index 0000000..8b4e08a
--- /dev/null
@@ -0,0 +1,37 @@
+#!/bin/sh
+
+TDIR=${AUTOPKGTEST_TMP:-/tmp/fuse_dir}
+LOGDIR=${AUTOPKGTEST_ARTIFACTS:-/tmp/fuse_dir_log}
+IMG=$TDIR/test-image.img
+MNT=$TDIR/mnt
+
+# some autopkgtest environments may not have /etc/mtab and/or /proc/mounts
+EXT2FS_NO_MTAB_OK=yes
+export EXT2FS_NO_MTAB_OK
+
+mkdir -p $LOGDIR $TDIR $MNT
+
+/sbin/mke2fs -E root_owner -q -t ext4 -d e2fsck $IMG 8M
+/sbin/e2label $IMG test
+fuse2fs $IMG $MNT > $LOGDIR/fuse2fs.log 2>&1
+if test $? -ne 0 ; then
+   echo "fuse2fs failed; see $LOGDIR/fuse2fs.log"
+   exit 1
+fi
+diff e2fsck/pass1.c $MNT/pass1.c
+echo foobar > $MNT/testfile
+fusermount -u $MNT > $LOGDIR/fusermount.log 2>&1
+if test $? -ne 0 ; then
+   echo "fusermount failed; see $LOGDIR/fusermount.log"
+   exit 1
+fi
+/sbin/e2fsck -fy $IMG > $LOGDIR/e2fsck.log 2>&1
+if test $? -ne 0 ; then
+   echo "e2fsck failed; see $LOGDIR/e2fsck.log"
+   exit 1
+fi
+contents=$(/sbin/debugfs -R "cat testfile" $IMG 2> $LOGDIR/debugfs.log)
+if test "$contents" != foobar ; then
+   echo "testfile does not contain expected output"
+   exit 1
+fi
diff --git a/debian/tests/smoke b/debian/tests/smoke
new file mode 100755 (executable)
index 0000000..966be96
--- /dev/null
@@ -0,0 +1,32 @@
+#!/bin/sh
+
+TDIR=${AUTOPKGTEST_TMP:-/tmp/test_dir}
+LOGDIR=${AUTOPKGTEST_ARTIFACTS:-/tmp/test_dir_log}
+IMG=$TDIR/test-image.img
+
+# some autopkgtest environments may not have /etc/mtab and/or /proc/mounts
+EXT2FS_NO_MTAB_OK=yes
+export EXT2FS_NO_MTAB_OK
+
+mkdir -p $LOGDIR $TDIR
+
+/sbin/mke2fs -q -t ext4 -d e2fsck $IMG 8M
+/sbin/e2label $IMG test
+/sbin/e2fsck -fy $IMG > $LOGDIR/e2fsck.1.log 2>&1
+if test $? -ne 0 ; then
+   echo "First e2fsck failed; see $LOGDIR/e2fsck.1.log"
+   exit 1
+fi
+/sbin/resize2fs $IMG 16M > $LOGDIR/resize2fs.log 2>&1
+if test $? -ne 0 ; then
+   echo "Resize2fs failed; see $LOGDIR/e2fsck.1.log"
+   exit 1
+fi
+/sbin/e2fsck -fy $IMG > $LOGDIR/e2fsck.2.log 2>&1
+if test $? -ne 0 ; then
+   echo "Second e2fsck failed; see $LOGDIR/e2fsck.2.log"
+   exit 1
+fi
+/sbin/debugfs -R "dump pass1.c $TDIR/pass1.c" $IMG > $LOGDIR/debugfs.log 2>&1
+diff $TDIR/pass1.c e2fsck/pass1.c
+