From a7700e8a8fd649be43150f67c94fd02cf72b03a1 Mon Sep 17 00:00:00 2001 From: Felix Morgner Date: Sun, 26 Jul 2026 23:15:47 +0200 Subject: build: separate normal from stress tests --- cmake/Modules/BuildHostTests.cmake | 51 ++++++++++++++++++++++++++++++-------- 1 file changed, 41 insertions(+), 10 deletions(-) (limited to 'cmake') diff --git a/cmake/Modules/BuildHostTests.cmake b/cmake/Modules/BuildHostTests.cmake index 70038b46..d92c3308 100644 --- a/cmake/Modules/BuildHostTests.cmake +++ b/cmake/Modules/BuildHostTests.cmake @@ -1,36 +1,67 @@ include_guard(GLOBAL) function("teachos_add_tests" NAME) - add_executable("${NAME}_tests") - add_executable("${NAME}::tests" ALIAS "${NAME}_tests") + add_executable("${NAME}_tests") + add_executable("${NAME}::tests" ALIAS "${NAME}_tests") - file(GLOB_RECURSE + file(GLOB_RECURSE TEST_SOURCES RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} CONFIGURE_DEPENDS - "*.stress.cpp" "*.tests.cpp" ) - target_sources("${NAME}_tests" PRIVATE + target_sources("${NAME}_tests" PRIVATE ${TEST_SOURCES} ) - target_link_libraries("${NAME}_tests" PRIVATE + target_link_libraries("${NAME}_tests" PRIVATE "Catch2::Catch2WithMain" "${NAME}::lib" ) - set_target_properties("${NAME}_tests" PROPERTIES + set_target_properties("${NAME}_tests" PROPERTIES EXCLUDE_FROM_ALL NO ) + file(MAKE_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/bht_results") + + catch_discover_tests("${NAME}::tests" + REPORTER junit + OUTPUT_DIR "${CMAKE_CURRENT_BINARY_DIR}/bht_results" + OUTPUT_SUFFIX ".xml" + ) +endfunction() + +function("teachos_add_stress_tests" NAME) + add_executable("${NAME}_stress_tests") + add_executable("${NAME}::stress_tests" ALIAS "${NAME}_stress_tests") + + file(GLOB_RECURSE + TEST_SOURCES + RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} + CONFIGURE_DEPENDS + "*.stress.cpp" + ) + + target_sources("${NAME}_stress_tests" PRIVATE + ${TEST_SOURCES} + ) + + target_link_libraries("${NAME}_stress_tests" PRIVATE + "Catch2::Catch2WithMain" + "${NAME}::lib" + ) + + set_target_properties("${NAME}_stress_tests" PROPERTIES + EXCLUDE_FROM_ALL NO + ) - file(MAKE_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/bht_results") + file(MAKE_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/bht_results") - catch_discover_tests("${NAME}::tests" + catch_discover_tests("${NAME}::stress_tests" REPORTER junit OUTPUT_DIR "${CMAKE_CURRENT_BINARY_DIR}/bht_results" OUTPUT_SUFFIX ".xml" ) -endfunction() \ No newline at end of file +endfunction() -- cgit v1.2.3