Skip to content

Commit 86ecd60

Browse files
committed
fuzzers: provide test targets
Instead of having to find the fuzzer executables in our Azure test scripts, provide test targets for each of our fuzzers that will run them with the correct paths.
1 parent 1f44079 commit 86ecd60

File tree

2 files changed

+5
-3
lines changed

2 files changed

+5
-3
lines changed

ci/test.sh

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -256,9 +256,7 @@ if [ -z "$SKIP_FUZZERS" ]; then
256256
echo "## Running fuzzers"
257257
echo "##############################################################################"
258258

259-
for fuzzer in fuzzers/*_fuzzer; do
260-
"${fuzzer}" "${SOURCE_DIR}/fuzzers/corpora/$(basename "${fuzzer%_fuzzer}")" || failure
261-
done
259+
ctest -V -R 'fuzzer'
262260
fi
263261

264262
cleanup

fuzzers/CMakeLists.txt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,11 +9,15 @@ ENDIF ()
99
FILE(GLOB SRC_FUZZ RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *_fuzzer.c)
1010
FOREACH(fuzz_target_src ${SRC_FUZZ})
1111
STRING(REPLACE ".c" "" fuzz_target_name ${fuzz_target_src})
12+
STRING(REPLACE "_fuzzer" "" fuzz_name ${fuzz_target_name})
13+
1214
SET(${fuzz_target_name}_SOURCES ${fuzz_target_src} ${LIBGIT2_OBJECTS})
1315
IF(USE_STANDALONE_FUZZERS)
1416
LIST(APPEND ${fuzz_target_name}_SOURCES "standalone_driver.c")
1517
ENDIF()
1618
ADD_EXECUTABLE(${fuzz_target_name} ${${fuzz_target_name}_SOURCES})
1719
SET_TARGET_PROPERTIES(${fuzz_target_name} PROPERTIES C_STANDARD 90)
1820
TARGET_LINK_LIBRARIES(${fuzz_target_name} ${LIBGIT2_LIBS})
21+
22+
ADD_TEST(${fuzz_target_name} "${CMAKE_CURRENT_BINARY_DIR}/${fuzz_target_name}" "${CMAKE_CURRENT_SOURCE_DIR}/corpora/${fuzz_name}")
1923
ENDFOREACH()

0 commit comments

Comments
 (0)