1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
|
https://bugs.gentoo.org/935370
https://github.com/BLAKE3-team/BLAKE3/pull/405
From aad68f7f009b7e0607b3eee3b8b8e3021fa38bd7 Mon Sep 17 00:00:00 2001
From: matoro <matoro@users.noreply.github.com>
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)
|