diff options
Diffstat (limited to 'tests/ts')
-rwxr-xr-x | tests/ts/losetup/losetup | 64 | ||||
-rwxr-xr-x | tests/ts/losetup/losetup-blkdev | 80 | ||||
-rw-r--r-- | tests/ts/losetup/losetup_functions.sh | 7 |
3 files changed, 90 insertions, 61 deletions
diff --git a/tests/ts/losetup/losetup b/tests/ts/losetup/losetup index 804518998..3c4fcb74f 100755 --- a/tests/ts/losetup/losetup +++ b/tests/ts/losetup/losetup @@ -34,24 +34,14 @@ rm -f $TS_OUTPUT ts_skip_nonroot ts_check_losetup - -# set global variable TS_DEVICE -ts_scsi_debug_init dev_size_mb=11 -REFILE=$(ts_image_init 10) - -function lo_print { - local lo=$1 - echo "offset: $( $TS_CMD_LOSETUP --list --raw -n -O OFFSET $lo )" - echo "sizelimit: $( $TS_CMD_LOSETUP --list --raw -n -O SIZELIMIT $lo )" - echo "size: $( $TS_CMD_LSBLK -o SIZE -b -n -r $lo )" -} +. "$TS_SELF/losetup_functions.sh" # # file-* tests: Backing file is a regular file # -BACKFILE="$REFILE" +BACKFILE=$(ts_image_init 10) -ts_init_subtest "file" +ts_init_subtest "file-show" LODEV=$( $TS_CMD_LOSETUP --find --show $BACKFILE ) if [ -z "$LODEV" ]; then ts_log "Failed to create loop device" @@ -91,54 +81,6 @@ ts_finalize_subtest rm -rf $BACKFILE -# -# Backing file is a block device -# -BACKFILE="$TS_DEVICE" - -ts_init_subtest "blkdev" -LODEV=$( $TS_CMD_LOSETUP --find --show $BACKFILE ) -if [ -z "$LODEV" ]; then - ts_log "Failed to create loop device" -fi -lo_print $LODEV >> $TS_OUTPUT -$TS_CMD_LOSETUP -d $LODEV -ts_finalize_subtest - -ts_init_subtest "blkdev-offset" -LODEV=$( $TS_CMD_LOSETUP --offset 1MiB --find --show $BACKFILE ) -if [ -z "$LODEV" ]; then - ts_log "Failed to create loop device" -fi -lo_print $LODEV >> $TS_OUTPUT -$TS_CMD_LOSETUP -d $LODEV -ts_finalize_subtest - - -ts_init_subtest "blkdev-sizelimit" -LODEV=$( $TS_CMD_LOSETUP --sizelimit 3MiB --find --show $BACKFILE ) -if [ -z "$LODEV" ]; then - ts_log "Failed to create loop device" -fi -lo_print $LODEV >> $TS_OUTPUT -$TS_CMD_LOSETUP -d $LODEV -ts_finalize_subtest - - -ts_init_subtest "blkdev-section" -LODEV=$( $TS_CMD_LOSETUP --offset 1MiB --sizelimit 3MiB --find --show $BACKFILE ) -if [ -z "$LODEV" ]; then - ts_log "Failed to create loop device" -fi -lo_print $LODEV >> $TS_OUTPUT -$TS_CMD_LOSETUP -d $LODEV -ts_finalize_subtest - udevadm settle -rmmod scsi_debug - ts_finalize - - - diff --git a/tests/ts/losetup/losetup-blkdev b/tests/ts/losetup/losetup-blkdev new file mode 100755 index 000000000..0181a7d60 --- /dev/null +++ b/tests/ts/losetup/losetup-blkdev @@ -0,0 +1,80 @@ +#!/bin/bash + +# +# Copyright (C) 2013 Karel Zak <kzak@redhat.com> +# +# This file is part of util-linux. +# +# 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, or +# (at your option) any later version. +# +# 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. +# + +TS_TOPDIR="${0%/*}/../.." +TS_DESC="losetup-blkdev" + +. $TS_TOPDIR/functions.sh +ts_init "$*" + +ts_check_test_command "$TS_CMD_LOSETUP" + +ts_skip_nonroot +ts_check_losetup + +. "$TS_SELF/losetup_functions.sh" + +# +# Backing file is a block device +# +ts_scsi_debug_init dev_size_mb=11 +BACKFILE="$TS_DEVICE" + +ts_init_subtest "show" +LODEV=$( $TS_CMD_LOSETUP --find --show $BACKFILE ) +if [ -z "$LODEV" ]; then + ts_log "Failed to create loop device" +fi +lo_print $LODEV >> $TS_OUTPUT +$TS_CMD_LOSETUP -d $LODEV +ts_finalize_subtest + +ts_init_subtest "offset" +LODEV=$( $TS_CMD_LOSETUP --offset 1MiB --find --show $BACKFILE ) +if [ -z "$LODEV" ]; then + ts_log "Failed to create loop device" +fi +lo_print $LODEV >> $TS_OUTPUT +$TS_CMD_LOSETUP -d $LODEV +ts_finalize_subtest + + +ts_init_subtest "sizelimit" +LODEV=$( $TS_CMD_LOSETUP --sizelimit 3MiB --find --show $BACKFILE ) +if [ -z "$LODEV" ]; then + ts_log "Failed to create loop device" +fi +lo_print $LODEV >> $TS_OUTPUT +$TS_CMD_LOSETUP -d $LODEV +ts_finalize_subtest + + +ts_init_subtest "section" +LODEV=$( $TS_CMD_LOSETUP --offset 1MiB --sizelimit 3MiB --find --show $BACKFILE ) +if [ -z "$LODEV" ]; then + ts_log "Failed to create loop device" +fi +lo_print $LODEV >> $TS_OUTPUT +$TS_CMD_LOSETUP -d $LODEV +ts_finalize_subtest + +udevadm settle + +rmmod scsi_debug + +ts_finalize diff --git a/tests/ts/losetup/losetup_functions.sh b/tests/ts/losetup/losetup_functions.sh new file mode 100644 index 000000000..d17c82a30 --- /dev/null +++ b/tests/ts/losetup/losetup_functions.sh @@ -0,0 +1,7 @@ + +function lo_print { + local lo=$1 + echo "offset: $( $TS_CMD_LOSETUP --list --raw -n -O OFFSET $lo )" + echo "sizelimit: $( $TS_CMD_LOSETUP --list --raw -n -O SIZELIMIT $lo )" + echo "size: $( $TS_CMD_LSBLK -o SIZE -b -n -r $lo )" +} |