aboutsummaryrefslogtreecommitdiff
path: root/cmake/Modules/BuildHostTests.cmake
diff options
context:
space:
mode:
Diffstat (limited to 'cmake/Modules/BuildHostTests.cmake')
-rw-r--r--cmake/Modules/BuildHostTests.cmake51
1 files changed, 41 insertions, 10 deletions
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()