From: Karel Zak Date: Fri, 10 Oct 2014 10:56:45 +0000 (+0200) Subject: tests: add sfdisk GPT tests X-Git-Tag: v2.26-rc1~322 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=0aa57f186867b5ca259704a4d2a83b2235779056;p=thirdparty%2Futil-linux.git tests: add sfdisk GPT tests Signed-off-by: Karel Zak --- diff --git a/tests/expected/sfdisk/gpt b/tests/expected/sfdisk/gpt new file mode 100644 index 0000000000..e69de29bb2 diff --git a/tests/expected/sfdisk/gpt-all-defaults b/tests/expected/sfdisk/gpt-all-defaults new file mode 100644 index 0000000000..e1989a4b98 --- /dev/null +++ b/tests/expected/sfdisk/gpt-all-defaults @@ -0,0 +1,28 @@ +Checking that no-one is using this disk right now ... OK + +Disk : 50 MiB, 52428800 bytes, 102400 sectors +Units: sectors of 1 * 512 = 512 bytes +Sector size (logical/physical): 512 bytes / 4096 bytes +I/O size (minimum/optimal): 4096 bytes / 32768 bytes + +>>> Script header accepted. +>>> Script header accepted. +>>> Created a new . +Created a new . +2: Created a new . +3: Created a new . +4: Created a new . +5: Created a new . +6: +New situation: + +Device Start End Sectors Size Type +1 2048 12287 10240 5M Linux filesystem +2 12288 22527 10240 5M Linux filesystem +3 22528 32767 10240 5M Linux swap +4 32768 43007 10240 5M Linux root (x86-64) +5 43008 102366 59359 29M Linux filesystem + +The partition table has been altered. +Calling ioctl() to re-read partition table. +Syncing disks. diff --git a/tests/expected/sfdisk/gpt-attrs b/tests/expected/sfdisk/gpt-attrs new file mode 100644 index 0000000000..f702524460 --- /dev/null +++ b/tests/expected/sfdisk/gpt-attrs @@ -0,0 +1,5 @@ + +The partition table has been altered. +Calling ioctl() to re-read partition table. +Syncing disks. +RequiredPartiton NoBlockIOProtocol GUID:48,51 diff --git a/tests/expected/sfdisk/gpt-label b/tests/expected/sfdisk/gpt-label new file mode 100644 index 0000000000..34ee589e0b --- /dev/null +++ b/tests/expected/sfdisk/gpt-label @@ -0,0 +1,6 @@ +Partition name changed from '' to 'EFI system'. + +The partition table has been altered. +Calling ioctl() to re-read partition table. +Syncing disks. +EFI system diff --git a/tests/expected/sfdisk/gpt-read-dump b/tests/expected/sfdisk/gpt-read-dump new file mode 100644 index 0000000000..ce7e5364c7 --- /dev/null +++ b/tests/expected/sfdisk/gpt-read-dump @@ -0,0 +1,39 @@ +Checking that no-one is using this disk right now ... OK + +Disk : 50 MiB, 52428800 bytes, 102400 sectors +Units: sectors of 1 * 512 = 512 bytes +Sector size (logical/physical): 512 bytes / 4096 bytes +I/O size (minimum/optimal): 4096 bytes / 32768 bytes + +>>> Script header accepted. +>>> Script header accepted. +>>> Script header accepted. +>>> Created a new . +Created a new . +2: Created a new . +3: Created a new . +4: Created a new . +5: +New situation: + +Device Start End Sectors Size Type +1 2048 8191 6144 3M Linux root (x86) +2 8192 14335 6144 3M Linux filesystem +3 14336 20479 6144 3M Linux filesystem +4 20480 102399 81920 40M Linux filesystem + +The partition table has been altered. +Calling ioctl() to re-read partition table. +Syncing disks. +Disk /dev/sdb: 50 MiB, 52428800 bytes, 102400 sectors +Units: sectors of 1 * 512 = 512 bytes +Sector size (logical/physical): 512 bytes / 4096 bytes +I/O size (minimum/optimal): 4096 bytes / 32768 bytes +Disklabel type: gpt +Disk identifier: 3B8559DB-33AF-43E9-BEFC-C331D829B539 + +Start End Size UUID Type Name + 2048 8191 3M 4DD6948A-44F8-4E6C-8BDC-064F740704F8 Linux root (x86) + 8192 14335 3M 44B51DEF-5F04-465A-91AA-2889A62D8E49 Linux filesystem +14336 20479 3M 643E1D0D-BC02-4CED-B83B-86121062858F Linux filesystem +20480 102399 40M D2A29B0A-FDEE-40C3-9BAE-B9FA782C986C Linux filesystem GPT is the best diff --git a/tests/expected/sfdisk/gpt-type b/tests/expected/sfdisk/gpt-type new file mode 100644 index 0000000000..396b75d2bf --- /dev/null +++ b/tests/expected/sfdisk/gpt-type @@ -0,0 +1,5 @@ + +The partition table has been altered. +Calling ioctl() to re-read partition table. +Syncing disks. +C12A7328-F81F-11D2-BA4B-00A0C93EC93B diff --git a/tests/expected/sfdisk/gpt-uuid b/tests/expected/sfdisk/gpt-uuid new file mode 100644 index 0000000000..d3d11e8d9b --- /dev/null +++ b/tests/expected/sfdisk/gpt-uuid @@ -0,0 +1 @@ +91DC657B-D7B4-4653-A367-663194FFD432 diff --git a/tests/expected/sfdisk/gpt-write-dump b/tests/expected/sfdisk/gpt-write-dump new file mode 100644 index 0000000000..03b5e1f579 --- /dev/null +++ b/tests/expected/sfdisk/gpt-write-dump @@ -0,0 +1,9 @@ +label: gpt +label-id: 3B8559DB-33AF-43E9-BEFC-C331D829B539 +device: +unit: sectors + +1 : start= 2048, size= 6144, type=44479540-F297-41B2-9AF7-D131D5F0458A, uuid=4DD6948A-44F8-4E6C-8BDC-064F740704F8 +2 : start= 8192, size= 6144, type=0FC63DAF-8483-4772-8E79-3D69D8477DE4, uuid=44B51DEF-5F04-465A-91AA-2889A62D8E49 +3 : start= 14336, size= 6144, type=0FC63DAF-8483-4772-8E79-3D69D8477DE4, uuid=643E1D0D-BC02-4CED-B83B-86121062858F +4 : start= 20480, size= 81920, type=0FC63DAF-8483-4772-8E79-3D69D8477DE4, uuid=D2A29B0A-FDEE-40C3-9BAE-B9FA782C986C, name="GPT is the best" diff --git a/tests/ts/sfdisk/gpt b/tests/ts/sfdisk/gpt new file mode 100755 index 0000000000..c09dee2a79 --- /dev/null +++ b/tests/ts/sfdisk/gpt @@ -0,0 +1,106 @@ +#!/bin/bash + +# +# 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="GPT" + +. $TS_TOPDIR/functions.sh +ts_init "$*" + +ts_check_test_command "$TS_CMD_FDISK" + +ts_skip_nonroot + +# set global variable TS_DEVICE +ts_scsi_debug_init dev_size_mb=50 sector_size=512 physblk_exp=3 + + +ts_init_subtest "all-defaults" +$TS_CMD_SFDISK --unit S ${TS_DEVICE} >> $TS_OUTPUT 2>&1 < /dev/null +$TS_CMD_SFDISK --part-uuid ${TS_DEVICE} 1 >> $TS_OUTPUT 2>&1 +ts_fdisk_clean $TS_DEVICE +udevadm settle +ts_finalize_subtest + + +ts_init_subtest "label" +$TS_CMD_SFDISK --part-label ${TS_DEVICE} 1 "EFI system" >> $TS_OUTPUT 2>&1 +$TS_CMD_SFDISK --part-label ${TS_DEVICE} 1 >> $TS_OUTPUT 2>&1 +ts_fdisk_clean $TS_DEVICE +udevadm settle +ts_finalize_subtest + + +ts_init_subtest "type" +$TS_CMD_SFDISK --part-type ${TS_DEVICE} 1 "C12A7328-F81F-11D2-BA4B-00A0C93EC93B" >> $TS_OUTPUT 2>&1 +$TS_CMD_SFDISK --part-type ${TS_DEVICE} 1 >> $TS_OUTPUT 2>&1 +ts_fdisk_clean $TS_DEVICE +udevadm settle +ts_finalize_subtest + + +ts_init_subtest "attrs" +$TS_CMD_SFDISK --part-attrs ${TS_DEVICE} 2 "RequiredPartiton,NoBlockIOProtocol,48,51" >> $TS_OUTPUT 2>&1 +$TS_CMD_SFDISK --part-attrs ${TS_DEVICE} 2 >> $TS_OUTPUT 2>&1 +ts_fdisk_clean $TS_DEVICE +udevadm settle +ts_finalize_subtest + + +ts_init_subtest "read-dump" +$TS_CMD_WIPEFS -a ${TS_DEVICE} &> /dev/null +udevadm settle +$TS_CMD_SFDISK ${TS_DEVICE} >> $TS_OUTPUT 2>&1 <> $TS_OUTPUT 2>&1 +ts_finalize_subtest + + +ts_init_subtest "write-dump" +$TS_CMD_SFDISK --unit S --dump ${TS_DEVICE} >> $TS_OUTPUT 2>&1 +ts_fdisk_clean $TS_DEVICE +ts_finalize_subtest + + +rmmod scsi_debug +ts_finalize