https://bugs.gentoo.org/935370 https://github.com/BLAKE3-team/BLAKE3/pull/405 From aad68f7f009b7e0607b3eee3b8b8e3021fa38bd7 Mon Sep 17 00:00:00 2001 From: matoro Date: Tue, 2 Jul 2024 19:36:45 -0400 Subject: [PATCH] build(CMake): support running tests with ctest --- CMakeLists.txt | 11 +++++++++++ test.py | 4 ++-- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 3a3b232d..e778e3d7 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -168,6 +168,17 @@ else() BLAKE3_DISABLE_SIMD() endif() +# cmake test support +if (BLAKE3_BUILD_TESTING) + find_package(Python3 REQUIRED) + get_target_property(BLAKE3_SOURCES blake3 SOURCES) + add_executable(blake3-testing ${BLAKE3_SOURCES} main.c) + set_property(TARGET blake3-testing PROPERTY OUTPUT_NAME blake3) + target_compile_definitions(blake3-testing PRIVATE BLAKE3_TESTING=1) + enable_testing() + add_test(test_vectors "${Python3_EXECUTABLE}" "${CMAKE_CURRENT_SOURCE_DIR}/test.py" WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}") +endif() + # cmake install support install(FILES blake3.h DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}") install(TARGETS blake3 EXPORT blake3-targets) diff --git a/test.py b/test.py index 98b1c3df..2eb1f07e 100755 --- a/test.py +++ b/test.py @@ -2,7 +2,7 @@ from binascii import hexlify import json -from os import path +from os import getcwd, path import subprocess HERE = path.dirname(__file__) @@ -11,7 +11,7 @@ def run_blake3(args, input): - output = subprocess.run([path.join(HERE, "blake3")] + args, + output = subprocess.run([path.join(getcwd(), "blake3")] + args, input=input, stdout=subprocess.PIPE, check=True)