tests: (blkid) add support for multisession images
This commit adds support for multisession filesystem images to standard low-probe blkid tests. The expected image name is <name>-multi-<offset>[-<offset> ...][-<something>].img For example: iso-multi-0-174-348-genisoimage.img.xz triggers three sub-tests: : iso-multi-genisoimage-0 ... OK : iso-multi-genisoimage-174 ... OK : iso-multi-genisoimage-348 ... OK Addresses: https://github.com/karelzak/util-linux/issues/1161 Signed-off-by: Karel Zak <kzak@redhat.com>
This commit is contained in:
parent
0e0a3b59da
commit
abd7815501
|
@ -0,0 +1,9 @@
|
|||
ID_FS_APPLICATION_ID=GENISOIMAGE ISO 9660/HFS FILESYSTEM CREATOR (C) 1993 E.YOUNGDALE (C) 1997-2006 J.PEARSON/J.SCHILLING (C) 2006-2007 CDRKIT TEAM
|
||||
ID_FS_BLOCK_SIZE=2048
|
||||
ID_FS_LABEL=first_session
|
||||
ID_FS_LABEL_ENC=first\x20session
|
||||
ID_FS_SYSTEM_ID=LINUX
|
||||
ID_FS_TYPE=iso9660
|
||||
ID_FS_USAGE=filesystem
|
||||
ID_FS_UUID=2020-11-07-23-16-51-00
|
||||
ID_FS_UUID_ENC=2020-11-07-23-16-51-00
|
|
@ -0,0 +1,9 @@
|
|||
ID_FS_APPLICATION_ID=GENISOIMAGE ISO 9660/HFS FILESYSTEM CREATOR (C) 1993 E.YOUNGDALE (C) 1997-2006 J.PEARSON/J.SCHILLING (C) 2006-2007 CDRKIT TEAM
|
||||
ID_FS_BLOCK_SIZE=2048
|
||||
ID_FS_LABEL=second_session
|
||||
ID_FS_LABEL_ENC=second\x20session
|
||||
ID_FS_SYSTEM_ID=LINUX
|
||||
ID_FS_TYPE=iso9660
|
||||
ID_FS_USAGE=filesystem
|
||||
ID_FS_UUID=2020-11-07-23-18-14-00
|
||||
ID_FS_UUID_ENC=2020-11-07-23-18-14-00
|
|
@ -0,0 +1,9 @@
|
|||
ID_FS_APPLICATION_ID=GENISOIMAGE ISO 9660/HFS FILESYSTEM CREATOR (C) 1993 E.YOUNGDALE (C) 1997-2006 J.PEARSON/J.SCHILLING (C) 2006-2007 CDRKIT TEAM
|
||||
ID_FS_BLOCK_SIZE=2048
|
||||
ID_FS_LABEL=third_session
|
||||
ID_FS_LABEL_ENC=third\x20session
|
||||
ID_FS_SYSTEM_ID=LINUX
|
||||
ID_FS_TYPE=iso9660
|
||||
ID_FS_USAGE=filesystem
|
||||
ID_FS_UUID=2020-11-07-23-22-08-00
|
||||
ID_FS_UUID_ENC=2020-11-07-23-22-08-00
|
|
@ -0,0 +1,11 @@
|
|||
ID_FS_BLOCK_SIZE=2048
|
||||
ID_FS_LABEL=first_session
|
||||
ID_FS_LABEL_ENC=first\x20session
|
||||
ID_FS_LOGICAL_VOLUME_ID=first session
|
||||
ID_FS_TYPE=udf
|
||||
ID_FS_USAGE=filesystem
|
||||
ID_FS_UUID=5fa71e760000246c
|
||||
ID_FS_UUID_ENC=5fa71e760000246c
|
||||
ID_FS_VERSION=1.02
|
||||
ID_FS_VOLUME_ID=first session
|
||||
ID_FS_VOLUME_SET_ID=5FA71E760000246C
|
|
@ -0,0 +1,11 @@
|
|||
ID_FS_BLOCK_SIZE=2048
|
||||
ID_FS_LABEL=second_session
|
||||
ID_FS_LABEL_ENC=second\x20session
|
||||
ID_FS_LOGICAL_VOLUME_ID=second session
|
||||
ID_FS_TYPE=udf
|
||||
ID_FS_USAGE=filesystem
|
||||
ID_FS_UUID=5fa71eba00002500
|
||||
ID_FS_UUID_ENC=5fa71eba00002500
|
||||
ID_FS_VERSION=1.02
|
||||
ID_FS_VOLUME_ID=second session
|
||||
ID_FS_VOLUME_SET_ID=5FA71EBA00002500
|
|
@ -0,0 +1,11 @@
|
|||
ID_FS_BLOCK_SIZE=2048
|
||||
ID_FS_LABEL=third_session
|
||||
ID_FS_LABEL_ENC=third\x20session
|
||||
ID_FS_LOGICAL_VOLUME_ID=third session
|
||||
ID_FS_TYPE=udf
|
||||
ID_FS_USAGE=filesystem
|
||||
ID_FS_UUID=5fa71eef00002553
|
||||
ID_FS_UUID_ENC=5fa71eef00002553
|
||||
ID_FS_VERSION=1.02
|
||||
ID_FS_VOLUME_ID=third session
|
||||
ID_FS_VOLUME_SET_ID=5FA71EEF00002553
|
|
@ -0,0 +1,11 @@
|
|||
ID_FS_BLOCK_SIZE=2048
|
||||
ID_FS_LABEL=first_session
|
||||
ID_FS_LABEL_ENC=first\x20session
|
||||
ID_FS_LOGICAL_VOLUME_ID=first session
|
||||
ID_FS_TYPE=udf
|
||||
ID_FS_USAGE=filesystem
|
||||
ID_FS_UUID=5fa6f31ee7b7f813
|
||||
ID_FS_UUID_ENC=5fa6f31ee7b7f813
|
||||
ID_FS_VERSION=2.01
|
||||
ID_FS_VOLUME_ID=first session
|
||||
ID_FS_VOLUME_SET_ID=5fa6f31ee7b7f813LinuxUDF
|
|
@ -0,0 +1,11 @@
|
|||
ID_FS_BLOCK_SIZE=2048
|
||||
ID_FS_LABEL=second_session
|
||||
ID_FS_LABEL_ENC=second\x20session
|
||||
ID_FS_LOGICAL_VOLUME_ID=second session
|
||||
ID_FS_TYPE=udf
|
||||
ID_FS_USAGE=filesystem
|
||||
ID_FS_UUID=5fa6f32c75d6d6a6
|
||||
ID_FS_UUID_ENC=5fa6f32c75d6d6a6
|
||||
ID_FS_VERSION=2.01
|
||||
ID_FS_VOLUME_ID=second session
|
||||
ID_FS_VOLUME_SET_ID=5fa6f32c75d6d6a6LinuxUDF
|
|
@ -0,0 +1,11 @@
|
|||
ID_FS_BLOCK_SIZE=2048
|
||||
ID_FS_LABEL=third_session
|
||||
ID_FS_LABEL_ENC=third\x20session
|
||||
ID_FS_LOGICAL_VOLUME_ID=third session
|
||||
ID_FS_TYPE=udf
|
||||
ID_FS_USAGE=filesystem
|
||||
ID_FS_UUID=5fa6f33b0f78bab0
|
||||
ID_FS_UUID_ENC=5fa6f33b0f78bab0
|
||||
ID_FS_VERSION=2.01
|
||||
ID_FS_VOLUME_ID=third session
|
||||
ID_FS_VOLUME_SET_ID=5fa6f33b0f78bab0LinuxUDF
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -32,12 +32,34 @@ for img in $(ls $TS_SELF/images-fs/*.img.xz | sort); do
|
|||
name=$(basename $img .img.xz)
|
||||
outimg=$TS_OUTDIR/images-fs/${name}.img
|
||||
|
||||
ts_init_subtest $name
|
||||
|
||||
xz -dc $img > $outimg
|
||||
|
||||
$TS_CMD_BLKID -p -o udev $outimg 2> $TS_ERRLOG | sort > $TS_OUTPUT
|
||||
ts_finalize_subtest
|
||||
#
|
||||
# multi session images, the image name contains "-multi-" and all
|
||||
# -<numbers>- are interpreted as offset to the sessions. The offset is
|
||||
# calculated in 2048 sectors. For example: iso-multi-0-174-348-genisoimage.img
|
||||
#
|
||||
if [[ $name =~ (.*multi.*) ]]; then
|
||||
sessions=$(echo "$name" \
|
||||
| awk 'BEGIN { RS="-" } /^[[:digit:]]+$/ { print $0 }')
|
||||
name=$(echo "$name" \
|
||||
| awk 'BEGIN { RS="-"; ORS="-" } !/^[[:digit:]]+$/ { print $1 }' \
|
||||
| sed 's/-$//g')
|
||||
for off in $sessions; do
|
||||
ts_init_subtest $name-$off
|
||||
$TS_CMD_BLKID -p -o udev $outimg \
|
||||
--hint session_offset=$(( $off * 2048 )) \
|
||||
2> $TS_ERRLOG | sort > $TS_OUTPUT
|
||||
ts_finalize_subtest
|
||||
done
|
||||
#
|
||||
# Standard filesystem images
|
||||
#
|
||||
else
|
||||
ts_init_subtest $name
|
||||
$TS_CMD_BLKID -p -o udev $outimg 2> $TS_ERRLOG | sort > $TS_OUTPUT
|
||||
ts_finalize_subtest
|
||||
fi
|
||||
done
|
||||
|
||||
ts_finalize
|
||||
|
|
Loading…
Reference in New Issue