From: Thomas Weißschuh Date: Sun, 31 Dec 2023 12:32:56 +0000 (+0100) Subject: wipefs: (tests) add test for all detected signatures X-Git-Tag: v2.40-rc1~87 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=da349956c19f3a8eff5f525d4899822d4a6f0cc9;p=thirdparty%2Futil-linux.git wipefs: (tests) add test for all detected signatures This is useful to validate that multiple signatures were detected. Use it for bcachefs, as that prober will gain support for backup superblocks. Signed-off-by: Thomas Weißschuh --- diff --git a/tests/expected/wipefs/signatures-bcachefs b/tests/expected/wipefs/signatures-bcachefs new file mode 100644 index 0000000000..607fe4f3e6 --- /dev/null +++ b/tests/expected/wipefs/signatures-bcachefs @@ -0,0 +1 @@ +0x1018,e1cf0710-c3cb-498b-9453-d5f3e7dbf9cc,,bcachefs diff --git a/tests/ts/wipefs/images/bcachefs.img.xz b/tests/ts/wipefs/images/bcachefs.img.xz new file mode 100644 index 0000000000..2c74b96929 Binary files /dev/null and b/tests/ts/wipefs/images/bcachefs.img.xz differ diff --git a/tests/ts/wipefs/signatures b/tests/ts/wipefs/signatures new file mode 100755 index 0000000000..7749588366 --- /dev/null +++ b/tests/ts/wipefs/signatures @@ -0,0 +1,40 @@ +#!/bin/bash + +# +# Copyright (C) 2023 Thomas Weißschuh +# +# 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="signatures" + +. "$TS_TOPDIR"/functions.sh +ts_init "$*" + +ts_check_test_command "$TS_CMD_WIPEFS" +ts_check_prog "xz" + +mkdir -p "${TS_OUTDIR}/images" + +for img in $(ls "${TS_SELF}"/images/*.img.xz | sort); do + name="$(basename "$img" .img.xz)" + outimg="${TS_OUTDIR}/images/${name}.img" + + xz -dc "$img" > "$outimg" + + ts_init_subtest "$name" + "$TS_CMD_WIPEFS" --parsable --no-act "$outimg" 2> "$TS_ERRLOG" > "$TS_OUTPUT" + ts_finalize_subtest +done + +ts_finalize