From f82448f83c99ea8c567510f8b1edad185ab2181b Mon Sep 17 00:00:00 2001 From: Karel Zak Date: Tue, 29 May 2007 01:29:25 +0200 Subject: [PATCH] tests: add mount by uuid with devname in fstab Signed-off-by: Karel Zak --- tests/Makefile.am | 1 + tests/expected/ts-fstab-uuid2devname | 1 + tests/ts-fstab-uuid2devname | 70 ++++++++++++++++++++++++++++ 3 files changed, 72 insertions(+) create mode 100644 tests/expected/ts-fstab-uuid2devname create mode 100755 tests/ts-fstab-uuid2devname diff --git a/tests/Makefile.am b/tests/Makefile.am index fb90813be..677ebc230 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -13,6 +13,7 @@ EXTRA_DIST = expected/ \ ts-fstab-label2devname \ ts-fstab-label2uuid \ ts-fstab-uuid \ + ts-fstab-uuid2devname \ ts-fstab-devname \ ts-fstab-devname2label \ ts-fstab-devname2uuid \ diff --git a/tests/expected/ts-fstab-uuid2devname b/tests/expected/ts-fstab-uuid2devname new file mode 100644 index 000000000..35821117c --- /dev/null +++ b/tests/expected/ts-fstab-uuid2devname @@ -0,0 +1 @@ +Success diff --git a/tests/ts-fstab-uuid2devname b/tests/ts-fstab-uuid2devname new file mode 100755 index 000000000..531623490 --- /dev/null +++ b/tests/ts-fstab-uuid2devname @@ -0,0 +1,70 @@ +#!/bin/bash + +# +# Copyright (C) 2007 Karel Zak +# +# 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 UUID -- with an devname in fstab +# + +. commands.sh +. functions.sh + +TS_COMPONENT="fstab" +TS_DESC="uuid2devname" + +ts_init "$1" +ts_skip_nonroot + +set -o pipefail + +DEVICE=$(ts_device_init) +[ "$?" == 0 ] || ts_die "Cannot init device" + +mkfs.ext3 $DEVICE &> /dev/null +[ "$?" == "0" ] || ts_die "Cannot make ext3 on $DEVICE" $DEVICE + +ts_device_has_uuid $DEVICE +[ "$?" == "0" ] || ts_die "Cannot found UUID on $DEVICE" $DEVICE + +UUID=$(ts_uuid_by_devname $DEVICE) + +ts_udev_dev_support "by-uuid" $UUID +[ "$?" == "0" ] || ts_skip "udev ignores /dev/loop*" $DEVICE + +[ -d "$TS_MOUNTPOINT" ] || mkdir -p $TS_MOUNTPOINT + +ts_fstab_add "$DEVICE" + +# variant A) +$TS_CMD_MOUNT -U $UUID 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 "UUID=$UUID" 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 +