summaryrefslogtreecommitdiffstats
path: root/tests/ts/libmount
diff options
context:
space:
mode:
authorRuediger Meier2016-03-05 18:51:59 +0100
committerRuediger Meier2016-03-07 23:34:24 +0100
commit7e604f3c804a5718b1c591eb32043d140f052803 (patch)
tree4774fa8814528798eb9971a715bff7315af82597 /tests/ts/libmount
parenttests: cramfs, fix root group (diff)
downloadkernel-qcow2-util-linux-7e604f3c804a5718b1c591eb32043d140f052803.tar.gz
kernel-qcow2-util-linux-7e604f3c804a5718b1c591eb32043d140f052803.tar.xz
kernel-qcow2-util-linux-7e604f3c804a5718b1c591eb32043d140f052803.zip
tests: don't skip case "output undefined"
Treat missing expected files as empty and let the test fail if there is non-empty output. Expected output may be missing in these cases: 1. forgot to commit the file after changing/adding a (sub)test 2. a bug in a test where we do tricks with TS_EXPECTED 3. and most notable if ts_die() is called before a subtest is initialized, e.g. in ts_scsi_debug_init() I always wondered why we don't treat this as FAILED. Now we do so, ts_finalize and ts_gen_diff looks much cleaner now. The change discovers that tests with subtest were ignoring the "non-sub" expected files which had to be fixed. BTW we removed any zero sized files. Moreover now we respect diff's return value. In past all test succeeded when diff was not able to write to diffdir, e.g. when running tests as normal user after they run as root. Signed-off-by: Ruediger Meier <ruediger.meier@ga-group.nl>
Diffstat (limited to 'tests/ts/libmount')
-rwxr-xr-xtests/ts/libmount/context-utab47
-rwxr-xr-xtests/ts/libmount/context-utab-py58
2 files changed, 52 insertions, 53 deletions
diff --git a/tests/ts/libmount/context-utab b/tests/ts/libmount/context-utab
index 8b93fe990..38bc1701c 100755
--- a/tests/ts/libmount/context-utab
+++ b/tests/ts/libmount/context-utab
@@ -15,6 +15,7 @@ ts_check_test_command "$TS_CMD_UUIDGEN"
ts_skip_nonroot
ts_check_prog "mkfs.ext4"
+ts_check_prog "mkfs.btrfs"
TESTPROG="$TS_HELPER_LIBMOUNT_CONTEXT"
LABEL=libmount-test
@@ -93,35 +94,33 @@ grep -q $DEVICE $LIBMOUNT_UTAB && \
ts_finalize_subtest
-if [ -x "/sbin/mkfs.btrfs" ]; then
- $TS_CMD_WIPEFS -a $DEVICE &> /dev/null
- ts_log "Create filesystem [btrfs]"
- mkfs.btrfs -L "$LABEL" $DEVICE &> /dev/null
- udevadm settle
+$TS_CMD_WIPEFS -a $DEVICE &> /dev/null
+ts_log "Create filesystem [btrfs]"
+mkfs.btrfs -L "$LABEL" $DEVICE &> /dev/null
+udevadm settle
- mount -t btrfs $DEVICE $MOUNTPOINT &> /dev/null
- btrfs subvolume create $MOUNTPOINT/sub &> /dev/null
- umount $MOUNTPOINT &> /dev/null
+mount -t btrfs $DEVICE $MOUNTPOINT &> /dev/null
+btrfs subvolume create $MOUNTPOINT/sub &> /dev/null
+umount $MOUNTPOINT &> /dev/null
- udevadm settle
+udevadm settle
- ts_init_subtest "mount-uhelper-subvol"
- mkdir -p $MOUNTPOINT &> /dev/null
- ts_valgrind $TESTPROG --mount -o uhelper=foo,rw,subvol=sub $DEVICE $MOUNTPOINT >> $TS_OUTPUT 2>&1
- grep -q $DEVICE $LIBMOUNT_UTAB || \
- echo "cannot find $DEVICE in $LIBMOUNT_UTAB" >> $TS_OUTPUT 2>&1
- ts_finalize_subtest
+ts_init_subtest "mount-uhelper-subvol"
+mkdir -p $MOUNTPOINT &> /dev/null
+ts_valgrind $TESTPROG --mount -o uhelper=foo,rw,subvol=sub $DEVICE $MOUNTPOINT >> $TS_OUTPUT 2>&1
+grep -q $DEVICE $LIBMOUNT_UTAB || \
+ echo "cannot find $DEVICE in $LIBMOUNT_UTAB" >> $TS_OUTPUT 2>&1
+ts_finalize_subtest
- ts_log "All mount options (btrfs subvolume + utab) ---"
- $TS_CMD_FINDMNT --mtab $MOUNTPOINT -o OPTIONS -n >> $TS_OUTPUT 2>&1
- ts_log "---"
+ts_log "All mount options (btrfs subvolume + utab) ---"
+$TS_CMD_FINDMNT --mtab $MOUNTPOINT -o OPTIONS -n >> $TS_OUTPUT 2>&1
+ts_log "---"
- ts_init_subtest "umount-subvol"
- ts_valgrind $TESTPROG --umount $MOUNTPOINT >> $TS_OUTPUT 2>&1
- grep -q $DEVICE $LIBMOUNT_UTAB && \
- echo "umount (mountpoint) failed: found $DEVICE in $LIBMOUNT_UTAB" >> $TS_OUTPUT 2>&1
- ts_finalize_subtest
-fi
+ts_init_subtest "umount-subvol"
+ts_valgrind $TESTPROG --umount $MOUNTPOINT >> $TS_OUTPUT 2>&1
+grep -q $DEVICE $LIBMOUNT_UTAB && \
+ echo "umount (mountpoint) failed: found $DEVICE in $LIBMOUNT_UTAB" >> $TS_OUTPUT 2>&1
+ts_finalize_subtest
ts_log "...done."
rmmod scsi_debug
diff --git a/tests/ts/libmount/context-utab-py b/tests/ts/libmount/context-utab-py
index 5337d10b2..fdde63a7a 100755
--- a/tests/ts/libmount/context-utab-py
+++ b/tests/ts/libmount/context-utab-py
@@ -14,6 +14,7 @@ ts_check_test_command "$TS_CMD_UUIDGEN"
ts_skip_nonroot
ts_check_prog "mkfs.ext4"
+ts_check_prog "mkfs.btrfs"
ts_init_py libmount
@@ -93,35 +94,34 @@ grep -q $DEVICE $LIBMOUNT_UTAB && \
echo "umount (mountpoint) failed: found $DEVICE in $LIBMOUNT_UTAB" >> $TS_OUTPUT 2>&1
ts_finalize_subtest
-if [ -x "/sbin/mkfs.btrfs" ]; then
- $TS_CMD_WIPEFS -a $DEVICE &> /dev/null
- ts_log "Create filesystem [btrfs]"
- mkfs.btrfs -L "$LABEL" $DEVICE &> /dev/null
- udevadm settle
-
- mount -t btrfs $DEVICE $MOUNTPOINT &> /dev/null
- btrfs subvolume create $MOUNTPOINT/sub &> /dev/null
- umount $MOUNTPOINT &> /dev/null
-
- udevadm settle
-
- ts_init_subtest "mount-uhelper-subvol"
- mkdir -p $MOUNTPOINT &> /dev/null
- $PYTHON $TESTPROG --mount -o uhelper=foo,rw,subvol=sub $DEVICE $MOUNTPOINT >> $TS_OUTPUT 2>&1
- grep -q $DEVICE $LIBMOUNT_UTAB || \
- echo "cannot find $DEVICE in $LIBMOUNT_UTAB" >> $TS_OUTPUT 2>&1
- ts_finalize_subtest
-
- ts_log "All mount options (btrfs subvolume + utab) ---"
- $TS_CMD_FINDMNT --mtab $MOUNTPOINT -o OPTIONS -n >> $TS_OUTPUT 2>&1
- ts_log "---"
-
- ts_init_subtest "umount-subvol"
- $PYTHON $TESTPROG --umount $MOUNTPOINT >> $TS_OUTPUT 2>&1
- grep -q $DEVICE $LIBMOUNT_UTAB && \
- echo "umount (mountpoint) failed: found $DEVICE in $LIBMOUNT_UTAB" >> $TS_OUTPUT 2>&1
- ts_finalize_subtest
-fi
+
+$TS_CMD_WIPEFS -a $DEVICE &> /dev/null
+ts_log "Create filesystem [btrfs]"
+mkfs.btrfs -L "$LABEL" $DEVICE &> /dev/null
+udevadm settle
+
+mount -t btrfs $DEVICE $MOUNTPOINT &> /dev/null
+btrfs subvolume create $MOUNTPOINT/sub &> /dev/null
+umount $MOUNTPOINT &> /dev/null
+
+udevadm settle
+
+ts_init_subtest "mount-uhelper-subvol"
+mkdir -p $MOUNTPOINT &> /dev/null
+$PYTHON $TESTPROG --mount -o uhelper=foo,rw,subvol=sub $DEVICE $MOUNTPOINT >> $TS_OUTPUT 2>&1
+grep -q $DEVICE $LIBMOUNT_UTAB || \
+ echo "cannot find $DEVICE in $LIBMOUNT_UTAB" >> $TS_OUTPUT 2>&1
+ts_finalize_subtest
+
+ts_log "All mount options (btrfs subvolume + utab) ---"
+$TS_CMD_FINDMNT --mtab $MOUNTPOINT -o OPTIONS -n >> $TS_OUTPUT 2>&1
+ts_log "---"
+
+ts_init_subtest "umount-subvol"
+$PYTHON $TESTPROG --umount $MOUNTPOINT >> $TS_OUTPUT 2>&1
+grep -q $DEVICE $LIBMOUNT_UTAB && \
+ echo "umount (mountpoint) failed: found $DEVICE in $LIBMOUNT_UTAB" >> $TS_OUTPUT 2>&1
+ts_finalize_subtest
ts_log "...done."
rmmod scsi_debug