]> err.no Git - util-linux/commitdiff
tests: add mount by label with uuid in fstab
authorKarel Zak <kzak@redhat.com>
Mon, 28 May 2007 23:28:06 +0000 (01:28 +0200)
committerKarel Zak <kzak@redhat.com>
Wed, 30 May 2007 09:24:06 +0000 (11:24 +0200)
Signed-off-by: Karel Zak <kzak@redhat.com>
tests/Makefile.am
tests/expected/ts-fstab-label2uuid [new file with mode: 0644]
tests/ts-fstab-label2uuid [new file with mode: 0755]

index 7a9fb26275b65d8c120fe6a9e56cd501ca9f6e23..fb90813be5bb76d2c2c5180bc83a3f746ffb8067 100644 (file)
@@ -11,6 +11,7 @@ EXTRA_DIST =  expected/ \
                ts-cramfs-mkfs \
                ts-fstab-label \
                ts-fstab-label2devname \
+               ts-fstab-label2uuid \
                ts-fstab-uuid \
                ts-fstab-devname \
                ts-fstab-devname2label \
diff --git a/tests/expected/ts-fstab-label2uuid b/tests/expected/ts-fstab-label2uuid
new file mode 100644 (file)
index 0000000..3582111
--- /dev/null
@@ -0,0 +1 @@
+Success
diff --git a/tests/ts-fstab-label2uuid b/tests/ts-fstab-label2uuid
new file mode 100755 (executable)
index 0000000..5467b46
--- /dev/null
@@ -0,0 +1,75 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2007 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux-ng.
+#
+# This file is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License.
+#
+# This file is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+
+#
+# mount by LABEL -- with an UUID in fstab
+#
+
+. commands.sh
+. functions.sh
+
+TS_COMPONENT="fstab"
+TS_DESC="label2uuid"
+
+LABEL="testMountL2U"
+
+ts_init "$1"
+ts_skip_nonroot
+
+set -o pipefail
+
+DEVICE=$(ts_device_init)
+[ "$?" == 0 ] || ts_die "Cannot init device"
+
+mkfs.ext3 -L $LABEL $DEVICE &> /dev/null
+[ "$?" == "0" ] || ts_die "Cannot make ext3 on $DEVICE" $DEVICE
+
+ts_device_has "LABEL" $LABEL $DEVICE
+[ "$?" == "0" ] || ts_die "Cannot found LABEL '$LABEL' on $DEVICE" $DEVICE
+
+ts_udev_dev_support "by-label" $LABEL
+[ "$?" == "0" ] || ts_skip "udev ignores /dev/loop*" $DEVICE
+
+ts_device_has_uuid $DEVICE
+[ "$?" == "0" ] || ts_die "Cannot found UUID on $DEVICE" $DEVICE
+
+UUID=$(ts_uuid_by_devname $DEVICE)
+
+[ -d "$TS_MOUNTPOINT" ] || mkdir -p $TS_MOUNTPOINT
+
+ts_fstab_add "UUID=$UUID"
+
+# variant A)
+$TS_CMD_MOUNT -L $LABEL 2>&1 >> $TS_OUTPUT
+grep -q $DEVICE /proc/mounts
+[ "$?" == "0" ] || ts_die "A) Cannot found $DEVICE in /proc/mounts" $DEVICE
+$TS_CMD_UMOUNT $DEVICE
+[ "$?" == "0" ] || ts_die "A) Cannot umount $DEVICE" $DEVICE
+
+# variant B)
+$TS_CMD_MOUNT "LABEL=$LABEL" 2>&1 >> $TS_OUTPUT
+grep -q $DEVICE /proc/mounts
+[ "$?" == "0" ] || ts_die "B) Cannot found $DEVICE in /proc/mounts" $DEVICE
+$TS_CMD_UMOUNT $DEVICE
+[ "$?" == "0" ] || ts_die "B) Cannot umount $DEVICE" $DEVICE
+
+ts_device_deinit $DEVICE
+ts_fstab_clean
+
+ts_log "Success"
+ts_finalize
+