aboutsummaryrefslogtreecommitdiff
path: root/cmake/script/CoverageFuzz.cmake
diff options
context:
space:
mode:
Diffstat (limited to 'cmake/script/CoverageFuzz.cmake')
-rw-r--r--cmake/script/CoverageFuzz.cmake17
1 files changed, 14 insertions, 3 deletions
diff --git a/cmake/script/CoverageFuzz.cmake b/cmake/script/CoverageFuzz.cmake
index 2626ea0cb5..0558805394 100644
--- a/cmake/script/CoverageFuzz.cmake
+++ b/cmake/script/CoverageFuzz.cmake
@@ -4,30 +4,39 @@
include(${CMAKE_CURRENT_LIST_DIR}/CoverageInclude.cmake)
-if(NOT DEFINED FUZZ_SEED_CORPUS_DIR)
- set(FUZZ_SEED_CORPUS_DIR ${CMAKE_CURRENT_SOURCE_DIR}/qa-assets/fuzz_seed_corpus)
+if(NOT DEFINED FUZZ_CORPORA_DIR)
+ set(FUZZ_CORPORA_DIR ${CMAKE_CURRENT_SOURCE_DIR}/qa-assets/fuzz_corpora)
+endif()
+
+set(fuzz_test_runner test/fuzz/test_runner.py ${FUZZ_CORPORA_DIR})
+if(DEFINED JOBS)
+ list(APPEND fuzz_test_runner -j ${JOBS})
endif()
execute_process(
- COMMAND test/fuzz/test_runner.py ${FUZZ_SEED_CORPUS_DIR} --loglevel DEBUG
+ COMMAND ${fuzz_test_runner} --loglevel DEBUG
WORKING_DIRECTORY ${CMAKE_CURRENT_LIST_DIR}
COMMAND_ERROR_IS_FATAL ANY
)
execute_process(
COMMAND ${LCOV_COMMAND} --capture --directory src --test-name fuzz-tests --output-file fuzz.info
WORKING_DIRECTORY ${CMAKE_CURRENT_LIST_DIR}
+ COMMAND_ERROR_IS_FATAL ANY
)
execute_process(
COMMAND ${LCOV_COMMAND} --zerocounters --directory src
WORKING_DIRECTORY ${CMAKE_CURRENT_LIST_DIR}
+ COMMAND_ERROR_IS_FATAL ANY
)
execute_process(
COMMAND ${LCOV_FILTER_COMMAND} fuzz.info fuzz_filtered.info
WORKING_DIRECTORY ${CMAKE_CURRENT_LIST_DIR}
+ COMMAND_ERROR_IS_FATAL ANY
)
execute_process(
COMMAND ${LCOV_COMMAND} --add-tracefile fuzz_filtered.info --output-file fuzz_filtered.info
WORKING_DIRECTORY ${CMAKE_CURRENT_LIST_DIR}
+ COMMAND_ERROR_IS_FATAL ANY
)
execute_process(
COMMAND ${LCOV_COMMAND} --add-tracefile baseline_filtered.info --add-tracefile fuzz_filtered.info --output-file fuzz_coverage.info
@@ -35,8 +44,10 @@ execute_process(
COMMAND ${AWK_EXECUTABLE} "{ print substr($3,2,50) \"/\" $5 }"
OUTPUT_FILE coverage_percent.txt
WORKING_DIRECTORY ${CMAKE_CURRENT_LIST_DIR}
+ COMMAND_ERROR_IS_FATAL ANY
)
execute_process(
COMMAND ${GENHTML_COMMAND} fuzz_coverage.info --output-directory fuzz.coverage
WORKING_DIRECTORY ${CMAKE_CURRENT_LIST_DIR}
+ COMMAND_ERROR_IS_FATAL ANY
)