diff --git a/test/units/testsuite-58.sh b/test/units/testsuite-58.sh index 8dadcc0a95..bf6c77ef98 100755 --- a/test/units/testsuite-58.sh +++ b/test/units/testsuite-58.sh @@ -8,76 +8,86 @@ if ! command -v systemd-repart &>/dev/null; then exit 0 fi +# shellcheck source=test/units/assert.sh +. "$(dirname "$0")"/assert.sh + export SYSTEMD_LOG_LEVEL=debug export PAGER=cat +seed=750b6cd5c4ae4012a15e7be3c29e6a47 + machine="$(uname -m)" if [ "${machine}" = "x86_64" ]; then - root_guid=4f68bce3-e8cd-4db1-96e7-fbcaf984b709 + root_guid=4F68BCE3-E8CD-4DB1-96E7-FBCAF984B709 root_uuid=60F33797-1D71-4DCB-AA6F-20564F036CD0 - usr_guid=8484680c-9521-48c6-9c11-b0720656f69e + usr_guid=8484680C-9521-48C6-9C11-B0720656F69E usr_uuid=7E3369DD-D653-4513-ADF5-B993A9F20C16 architecture="x86-64" elif [ "${machine}" = "i386" ] || [ "${machine}" = "i686" ] || [ "${machine}" = "x86" ]; then - root_guid=44479540-f297-41b2-9af7-d131d5f0458a - root_uuid=02b4253f-29a4-404e-8972-1669d3b03c87 - usr_guid=75250d76-8cc6-458e-bd66-bd47cc81a812 - usr_uuid=7b42ffb0-b0e1-4395-b20b-c78f4a571648 + root_guid=44479540-F297-41B2-9AF7-D131D5F0458A + root_uuid=02B4253F-29A4-404E-8972-1669D3B03C87 + usr_guid=75250D76-8CC6-458E-BD66-BD47CC81A812 + usr_uuid=7B42FFB0-B0E1-4395-B20B-C78F4A571648 architecture="x86" elif [ "${machine}" = "aarch64" ] || [ "${machine}" = "aarch64_be" ] || [ "${machine}" = "armv8b" ] || [ "${machine}" = "armv8l" ]; then - root_guid=b921b045-1df0-41c3-af44-4c6f280d3fae - root_uuid=055d0227-53a6-4033-85c3-9a5973eff483 - usr_guid=b0e01050-ee5f-4390-949a-9101b17104e9 - usr_uuid=fce3c75e-d6a4-44c0-87f0-4c105183fb1f + root_guid=B921B045-1DF0-41C3-AF44-4C6F280D3FAE + root_uuid=055D0227-53A6-4033-85C3-9A5973EFF483 + usr_guid=B0E01050-EE5F-4390-949A-9101B17104E9 + usr_uuid=FCE3C75E-D6A4-44C0-87F0-4C105183FB1F architecture="arm64" elif [ "${machine}" = "arm" ]; then - root_guid=69dad710-2ce4-4e3c-b16c-21a1d49abed3 - root_uuid=567da89e-8de2-4499-8d10-18f212dff034 - usr_guid=7d0359a3-02b3-4f0a-865c-654403e70625 - usr_uuid=71e93dc2-5073-42cb-8a84-a354e64d8966 + root_guid=69DAD710-2CE4-4E3C-B16C-21A1D49ABED3 + root_uuid=567DA89E-8DE2-4499-8D10-18F212DFF034 + usr_guid=7D0359A3-02B3-4F0A-865C-654403E70625 + usr_uuid=71E93DC2-5073-42CB-8A84-A354E64D8966 architecture="arm" elif [ "${machine}" = "loongarch64" ]; then - root_guid=77055800-792c-4f94-b39a-98c91b762bb6 - root_uuid=d8efc2d2-0133-41e4-bdcb-3b9f4cfddde8 - usr_guid=e611c702-575c-4cbe-9a46-434fa0bf7e3f - usr_uuid=031ffa75-00bb-49b6-a70d-911d2d82a5b7 + root_guid=77055800-792C-4F94-B39A-98C91B762BB6 + root_uuid=D8EFC2D2-0133-41E4-BDCB-3B9F4CFDDDE8 + usr_guid=E611C702-575C-4CBE-9A46-434FA0BF7E3F + usr_uuid=031FFA75-00BB-49B6-A70D-911D2D82A5B7 architecture="loongarch64" elif [ "${machine}" = "ia64" ]; then - root_guid=993d8d3d-f80e-4225-855a-9daf8ed7ea97 - root_uuid=dcf33449-0896-4ea9-bc24-7d58aeef522d - usr_guid=4301d2a6-4e3b-4b2a-bb94-9e0b2c4225ea - usr_uuid=bc2bcce7-80d6-449a-85cc-637424ce5241 + root_guid=993D8D3D-F80E-4225-855A-9DAF8ED7EA97 + root_uuid=DCF33449-0896-4EA9-BC24-7D58AEEF522D + usr_guid=4301D2A6-4E3B-4B2A-BB94-9E0B2C4225EA + usr_uuid=BC2BCCE7-80D6-449A-85CC-637424CE5241 architecture="ia64" elif [ "${machine}" = "s390x" ]; then - root_guid=5eead9a9-fe09-4a1e-a1d7-520d00531306 - root_uuid=7ebe0c85-e27e-48ec-b164-f4807606232e - usr_guid=8a4f5770-50aa-4ed3-874a-99b710db6fea - usr_uuid=51171d30-35cf-4a49-b8b5-9478b9b796a5 + root_guid=5EEAD9A9-FE09-4A1E-A1D7-520D00531306 + root_uuid=7EBE0C85-E27E-48EC-B164-F4807606232E + usr_guid=8A4F5770-50AA-4ED3-874A-99B710DB6FEA + usr_uuid=51171D30-35CF-4A49-B8B5-9478B9B796A5 architecture="s390x" elif [ "${machine}" = "ppc64le" ]; then - root_guid=c31c45e6-3f39-412e-80fb-4809c4980599 - root_uuid=061e67a1-092f-482f-8150-b525d50d6654 - usr_guid=15bb03af-77e7-4d4a-b12b-c0d084f7491c - usr_uuid=c0d0823b-8040-4c7c-a629-026248e297fb + root_guid=C31C45E6-3F39-412E-80FB-4809C4980599 + root_uuid=061E67A1-092F-482F-8150-B525D50D6654 + usr_guid=15BB03AF-77E7-4D4A-B12B-C0D084F7491C + usr_uuid=C0D0823B-8040-4C7C-A629-026248E297FB architecture="ppc64-le" else echo "Unexpected uname -m: ${machine} in testsuite-58.sh, please fix me" exit 1 fi -rm -f /var/tmp/testsuite-58.img /var/tmp/testsuite-58.2.img /tmp/testsuite-58.dump -mkdir -p /tmp/testsuite-58-defs/ +test_copy_blocks() { + local defs imgs output -# First part: create a disk image and verify its in order + defs="$(mktemp --directory "/tmp/test-repart.XXXXXXXXXX")" + imgs="$(mktemp --directory "/var/tmp/test-repart.XXXXXXXXXX")" + # shellcheck disable=SC2064 + trap "rm -rf '$defs' '$imgs'" RETURN -cat >/tmp/testsuite-58-defs/esp.conf <"$defs/esp.conf" </tmp/testsuite-58-defs/usr.conf <"$defs/usr.conf" </tmp/testsuite-58-defs/root.conf <"$defs/root.conf" </tmp/testsuite-58-defs/esp.conf <"$defs/esp.conf" </tmp/testsuite-58-defs/usr.conf <"$defs/usr.conf" </tmp/testsuite-58-defs/root.conf <"$defs/root.conf" </tmp/testsuite-58.3-defs/root.conf <"$defs/root.conf" <"$defs/test.conf" </tmp/testsuite-58-issue-21817-defs/test.conf < /tmp/testsuite-58-sector/a.conf < "$defs/a.conf" < /tmp/testsuite-58-sector/b.conf < "$defs/b.conf" < /tmp/testsuite-58-sector/c.conf < "$defs/c.conf" <= 512 and <= PAGE_SIZE, and # must be powers of 2. Which leaves exactly four different ones to test on # typical hardware -testsector 512 -testsector 1024 -testsector 2048 -testsector 4096 +test_sector 512 +test_sector 1024 +test_sector 2048 +test_sector 4096 echo OK >/testok