Split ZFS ZSTD test into its own test script. Add a check to the new test script to see if the zfs utility installed on the host supports "zstd" compression before running the test and fail the test if not. It seems at least some zfs-fuse binaries do not support zstd compression and the current test will fail in that case. Splitting into a new file will avoid masking other test failures due to missing zstd support.
Signed-off-by: Andrew Hamilton <[email protected]> Reviewed-by: Daniel Kiper <[email protected]> --- .gitignore | 1 + Makefile.util.def | 6 ++++++ tests/zfs_test.in | 1 - tests/zfs_zstd_test.in | 30 ++++++++++++++++++++++++++++++ 4 files changed, 37 insertions(+), 1 deletion(-) create mode 100644 tests/zfs_zstd_test.in diff --git a/.gitignore b/.gitignore index 524f2e6d0..67ad2d26d 100644 --- a/.gitignore +++ b/.gitignore @@ -283,3 +283,4 @@ widthspec.bin /xfs_test /xzcompress_test /zfs_test +/zfs_zstd_test diff --git a/Makefile.util.def b/Makefile.util.def index 91720e627..7b91c0b61 100644 --- a/Makefile.util.def +++ b/Makefile.util.def @@ -914,6 +914,12 @@ script = { common = tests/zfs_test.in; }; +script = { + testcase = native; + name = zfs_zstd_test; + common = tests/zfs_zstd_test.in; +}; + script = { testcase = native; name = cpio_test; diff --git a/tests/zfs_test.in b/tests/zfs_test.in index e1cb766a5..cd547b4d2 100644 --- a/tests/zfs_test.in +++ b/tests/zfs_test.in @@ -19,7 +19,6 @@ fi "@builddir@/grub-fs-tester" zfs_lzjb "@builddir@/grub-fs-tester" zfs_gzip "@builddir@/grub-fs-tester" zfs_zle -"@builddir@/grub-fs-tester" zfs_zstd "@builddir@/grub-fs-tester" zfs_raidz3 "@builddir@/grub-fs-tester" zfs_raidz2 "@builddir@/grub-fs-tester" zfs_raidz diff --git a/tests/zfs_zstd_test.in b/tests/zfs_zstd_test.in new file mode 100644 index 000000000..8cafceaaf --- /dev/null +++ b/tests/zfs_zstd_test.in @@ -0,0 +1,30 @@ +#!@BUILD_SHEBANG@ + +set -e + +if [ "x$EUID" = "x" ] ; then + EUID=`id -u` +fi + +if [ "$EUID" != 0 ] ; then + exit 99 +fi + +if ! which zpool >/dev/null 2>&1; then + echo "zpool not installed; cannot test zfs." + exit 99 +fi + +if ! which zfs >/dev/null 2>&1; then + echo "zfs not installed; cannot test zfs." + exit 99 +fi + +# If ZFS ZSTD compression is not supported (as is the case with zfs-fuse +# for example at the time of writing) then fail early the ZSTD compression testing. +if ! zfs get 2>&1 | grep -q "compression.*zstd"; then + echo "zfs zstd compression not supported; cannot test zfs zstd." + exit 99 +fi + +"@builddir@/grub-fs-tester" zfs_zstd -- 2.43.0 _______________________________________________ Grub-devel mailing list [email protected] https://lists.gnu.org/mailman/listinfo/grub-devel
