From 9c184406eaa7fd5660670f568ec445d7ff14a04a Mon Sep 17 00:00:00 2001 From: Mohammad Nejati Date: Sat, 23 Nov 2024 09:17:11 +0000 Subject: [PATCH] Register tests in CMakeLists --- test/CMakeLists.txt | 11 +++++++++++ test/beast/CMakeLists.txt | 3 +++ test/beast/_experimental/CMakeLists.txt | 3 +++ test/beast/core/CMakeLists.txt | 3 +++ test/beast/http/CMakeLists.txt | 3 +++ test/beast/ssl/CMakeLists.txt | 3 +++ test/beast/websocket/CMakeLists.txt | 3 +++ test/beast/zlib/CMakeLists.txt | 3 +++ test/doc/CMakeLists.txt | 3 +++ test/example/common/CMakeLists.txt | 3 +++ test/fuzz/CMakeLists.txt | 6 ++++++ 11 files changed, 44 insertions(+) diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index a956d5ff..8932997b 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -8,6 +8,17 @@ # Official repository: https://github.com/boostorg/beast # +if(BOOST_BEAST_IS_ROOT) + set(EXCLUDE_TESTS_FROM_ALL) +else() + set(EXCLUDE_TESTS_FROM_ALL EXCLUDE_FROM_ALL) +endif() + +if(NOT TARGET tests) + add_custom_target(tests ${EXCLUDE_TESTS_FROM_ALL}) + set_property(TARGET tests PROPERTY FOLDER Dependencies) +endif() + find_package(OpenSSL) # lib-asio diff --git a/test/beast/CMakeLists.txt b/test/beast/CMakeLists.txt index 78ce0952..61013f05 100644 --- a/test/beast/CMakeLists.txt +++ b/test/beast/CMakeLists.txt @@ -42,3 +42,6 @@ target_link_libraries(tests-beast set_target_properties(tests-beast PROPERTIES FOLDER "tests") + +add_test(NAME tests-beast COMMAND tests-beast) +add_dependencies(tests tests-beast) diff --git a/test/beast/_experimental/CMakeLists.txt b/test/beast/_experimental/CMakeLists.txt index 6aa942b7..59bd28c7 100644 --- a/test/beast/_experimental/CMakeLists.txt +++ b/test/beast/_experimental/CMakeLists.txt @@ -28,3 +28,6 @@ target_link_libraries(tests-beast-_experimental set_target_properties(tests-beast-_experimental PROPERTIES FOLDER "tests") + +add_test(NAME tests-beast-_experimental COMMAND tests-beast-_experimental) +add_dependencies(tests tests-beast-_experimental) diff --git a/test/beast/core/CMakeLists.txt b/test/beast/core/CMakeLists.txt index f448affe..6d77a028 100644 --- a/test/beast/core/CMakeLists.txt +++ b/test/beast/core/CMakeLists.txt @@ -20,3 +20,6 @@ target_link_libraries(tests-beast-core set_target_properties(tests-beast-core PROPERTIES FOLDER "tests") + +add_test(NAME tests-beast-core COMMAND tests-beast-core) +add_dependencies(tests tests-beast-core) diff --git a/test/beast/http/CMakeLists.txt b/test/beast/http/CMakeLists.txt index a27cc758..27ffeb89 100644 --- a/test/beast/http/CMakeLists.txt +++ b/test/beast/http/CMakeLists.txt @@ -20,3 +20,6 @@ target_link_libraries(tests-beast-http set_target_properties(tests-beast-http PROPERTIES FOLDER "tests") + +add_test(NAME tests-beast-http COMMAND tests-beast-http) +add_dependencies(tests tests-beast-http) diff --git a/test/beast/ssl/CMakeLists.txt b/test/beast/ssl/CMakeLists.txt index aa415741..6694d865 100644 --- a/test/beast/ssl/CMakeLists.txt +++ b/test/beast/ssl/CMakeLists.txt @@ -21,3 +21,6 @@ target_link_libraries(tests-beast-ssl set_target_properties(tests-beast-ssl PROPERTIES FOLDER "tests") + +add_test(NAME tests-beast-ssl COMMAND tests-beast-ssl) +add_dependencies(tests tests-beast-ssl) diff --git a/test/beast/websocket/CMakeLists.txt b/test/beast/websocket/CMakeLists.txt index a6b5a50d..15d842ea 100644 --- a/test/beast/websocket/CMakeLists.txt +++ b/test/beast/websocket/CMakeLists.txt @@ -20,3 +20,6 @@ target_link_libraries(tests-beast-websocket set_target_properties(tests-beast-websocket PROPERTIES FOLDER "tests") + +add_test(NAME tests-beast-websocket COMMAND tests-beast-websocket) +add_dependencies(tests tests-beast-websocket) diff --git a/test/beast/zlib/CMakeLists.txt b/test/beast/zlib/CMakeLists.txt index 238b1f5b..b76174ab 100644 --- a/test/beast/zlib/CMakeLists.txt +++ b/test/beast/zlib/CMakeLists.txt @@ -31,3 +31,6 @@ target_link_libraries(tests-beast-zlib set_target_properties(tests-beast-zlib PROPERTIES FOLDER "tests") + +add_test(NAME tests-beast-zlib COMMAND tests-beast-zlib) +add_dependencies(tests tests-beast-zlib) diff --git a/test/doc/CMakeLists.txt b/test/doc/CMakeLists.txt index fdb04c29..b5e6e520 100644 --- a/test/doc/CMakeLists.txt +++ b/test/doc/CMakeLists.txt @@ -23,3 +23,6 @@ target_link_libraries(tests-doc set_target_properties(tests-doc PROPERTIES FOLDER "tests") + +add_test(NAME tests-doc COMMAND tests-doc) +add_dependencies(tests tests-doc) diff --git a/test/example/common/CMakeLists.txt b/test/example/common/CMakeLists.txt index a19d863b..8d679963 100644 --- a/test/example/common/CMakeLists.txt +++ b/test/example/common/CMakeLists.txt @@ -27,3 +27,6 @@ target_link_libraries(tests-example-common set_target_properties(tests-example-common PROPERTIES FOLDER "tests") + +add_test(NAME tests-example-common COMMAND tests-example-common) +add_dependencies(tests tests-example-common) diff --git a/test/fuzz/CMakeLists.txt b/test/fuzz/CMakeLists.txt index af162300..848d839d 100644 --- a/test/fuzz/CMakeLists.txt +++ b/test/fuzz/CMakeLists.txt @@ -110,6 +110,12 @@ function(add_boost_beast_fuzzer NAME) add_dependencies(boost_beast_fuzz_all fuzz_${NAME}) set_target_properties(fuzz_${NAME} PROPERTIES FOLDER "UBSAN_OPTIONS=halt_on_error=false") set_target_properties(fuzz_${NAME} PROPERTIES FOLDER "fuzzing") + if (BOOST_BEAST_FUZZER_ADD_TO_CTEST) + add_test( + NAME test_fuzz_${NAME} + COMMAND ${CMAKE_COMMAND} --build ${CMAKE_BINARY_DIR} --target fuzz_${NAME}) + add_dependencies(tests test_fuzz_${NAME}) + endif() endfunction() # Register all fuzzers