From 576117b7eb9a80ff42d975d3a8c9220e9dcf6ca8 Mon Sep 17 00:00:00 2001 From: Brad King Date: Mon, 10 Nov 2025 14:58:15 -0500 Subject: Tests: Update expected Zstandard magic number for libarchive 3.8.2 libarchive 3.8.2 enabled Zstandard's checksum feature in the zstd write filter. Update our tests' expected results accordingly. Fixes: #27355 Reported-by: Funda Wang --- Tests/RunCMake/CommandLineTar/pax-zstd.cmake | 3 ++- Tests/RunCMake/CommandLineTar/roundtrip.cmake | 4 ++++ Tests/RunCMake/File_Archive/pax-zstd.cmake | 3 ++- Tests/RunCMake/File_Archive/roundtrip.cmake | 4 ++++ 4 files changed, 12 insertions(+), 2 deletions(-) diff --git a/Tests/RunCMake/CommandLineTar/pax-zstd.cmake b/Tests/RunCMake/CommandLineTar/pax-zstd.cmake index c2a304d..323b93a 100644 --- a/Tests/RunCMake/CommandLineTar/pax-zstd.cmake +++ b/Tests/RunCMake/CommandLineTar/pax-zstd.cmake @@ -7,4 +7,5 @@ set(DECOMPRESSION_FLAGS xvf) include(${CMAKE_CURRENT_LIST_DIR}/roundtrip.cmake) -check_magic("28b52ffd0058" LIMIT 6 HEX) +# libarchive 3.8.2 enables a checksum feature; older versions do not. +check_magic("^28b52ffd0[04]58$" LIMIT 6 HEX) diff --git a/Tests/RunCMake/CommandLineTar/roundtrip.cmake b/Tests/RunCMake/CommandLineTar/roundtrip.cmake index fa63d12..a6311ea 100644 --- a/Tests/RunCMake/CommandLineTar/roundtrip.cmake +++ b/Tests/RunCMake/CommandLineTar/roundtrip.cmake @@ -86,6 +86,10 @@ function(check_magic EXPECTED) ${ARGN} ) + if(EXPECTED MATCHES "[^0-9a-f]" AND ACTUAL MATCHES "${EXPECTED}") + return() + endif() + if(NOT ACTUAL STREQUAL EXPECTED) message(FATAL_ERROR "Actual [${ACTUAL}] does not match expected [${EXPECTED}]") diff --git a/Tests/RunCMake/File_Archive/pax-zstd.cmake b/Tests/RunCMake/File_Archive/pax-zstd.cmake index ba3036e..c52e21c 100644 --- a/Tests/RunCMake/File_Archive/pax-zstd.cmake +++ b/Tests/RunCMake/File_Archive/pax-zstd.cmake @@ -5,4 +5,5 @@ set(COMPRESSION_TYPE Zstd) include(${CMAKE_CURRENT_LIST_DIR}/roundtrip.cmake) -check_magic("28b52ffd0058" LIMIT 6 HEX) +# libarchive 3.8.2 enables a checksum feature; older versions do not. +check_magic("^28b52ffd0[04]58$" LIMIT 6 HEX) diff --git a/Tests/RunCMake/File_Archive/roundtrip.cmake b/Tests/RunCMake/File_Archive/roundtrip.cmake index bb9b25b..fa6c841 100644 --- a/Tests/RunCMake/File_Archive/roundtrip.cmake +++ b/Tests/RunCMake/File_Archive/roundtrip.cmake @@ -86,6 +86,10 @@ function(check_magic EXPECTED) ${ARGN} ) + if(EXPECTED MATCHES "[^0-9a-f]" AND ACTUAL MATCHES "${EXPECTED}") + return() + endif() + if(NOT ACTUAL STREQUAL EXPECTED) message(FATAL_ERROR "Actual [${ACTUAL}] does not match expected [${EXPECTED}]") -- cgit v0.12