Run script tests under valgrind too

This commit is contained in:
2024-09-14 13:51:45 -07:00
parent 628d16b7e6
commit 5580f9b71d
+21 -13
View File
@@ -248,6 +248,19 @@ if(CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR AND BUILD_TESTING)
add_test(NAME conflict_set_blackbox_${hash} COMMAND driver ${TEST}) add_test(NAME conflict_set_blackbox_${hash} COMMAND driver ${TEST})
endforeach() endforeach()
find_program(VALGRIND_EXE valgrind)
if(VALGRIND_EXE AND NOT CMAKE_CROSSCOMPILING)
list(LENGTH CORPUS_TESTS len)
math(EXPR last "${len} - 1")
set(partition_size 100)
foreach(i RANGE 0 ${last} ${partition_size})
list(SUBLIST CORPUS_TESTS ${i} ${partition_size} partition)
add_test(NAME conflict_set_blackbox_valgrind_${i}
COMMAND ${VALGRIND_EXE} --error-exitcode=99 --
$<TARGET_FILE:driver> ${partition})
endforeach()
endif()
# scripted tests. Written manually to fill in anything libfuzzer couldn't # scripted tests. Written manually to fill in anything libfuzzer couldn't
# find. # find.
if(NOT CMAKE_CROSSCOMPILING) if(NOT CMAKE_CROSSCOMPILING)
@@ -268,19 +281,14 @@ if(CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR AND BUILD_TESTING)
${Python3_EXECUTABLE} ${Python3_EXECUTABLE}
${CMAKE_CURRENT_SOURCE_DIR}/test_conflict_set.py test ${TEST} ${CMAKE_CURRENT_SOURCE_DIR}/test_conflict_set.py test ${TEST}
--build-dir ${CMAKE_CURRENT_BINARY_DIR}) --build-dir ${CMAKE_CURRENT_BINARY_DIR})
endforeach() if(VALGRIND_EXE AND NOT CMAKE_CROSSCOMPILING)
endif() add_test(
NAME script_test_${TEST}_valgrind
find_program(VALGRIND_EXE valgrind) COMMAND
if(VALGRIND_EXE AND NOT CMAKE_CROSSCOMPILING) ${VALGRIND_EXE} ${Python3_EXECUTABLE}
list(LENGTH CORPUS_TESTS len) ${CMAKE_CURRENT_SOURCE_DIR}/test_conflict_set.py test ${TEST}
math(EXPR last "${len} - 1") --build-dir ${CMAKE_CURRENT_BINARY_DIR})
set(partition_size 100) endif()
foreach(i RANGE 0 ${last} ${partition_size})
list(SUBLIST CORPUS_TESTS ${i} ${partition_size} partition)
add_test(NAME conflict_set_blackbox_valgrind_${i}
COMMAND ${VALGRIND_EXE} --error-exitcode=99 --
$<TARGET_FILE:driver> ${partition})
endforeach() endforeach()
endif() endif()