From e1e90f5fa8d546c6cbcd3e7245035e9539ed79d1 Mon Sep 17 00:00:00 2001 From: lids <1713278948@qq.com> Date: Wed, 29 Apr 2026 11:41:34 +0800 Subject: [PATCH] =?UTF-8?q?cMakelists=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- tests/CMakeLists.txt | 29 ++++++++++++----------------- tests/CMakeLists2.txt | 30 ++++++++++++++++++++++++++++++ 2 files changed, 42 insertions(+), 17 deletions(-) create mode 100644 tests/CMakeLists2.txt diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index 4d2e498..59052db 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -1,5 +1,9 @@ -# GoogleTest配置 +cmake_minimum_required(VERSION 3.10.0) +project(CppGenerate_test) include(FetchContent) +if (MSVC) + add_compile_options(/utf-8) +endif() FetchContent_Declare( googletest URL https://github.com/google/googletest/archive/03597a01ee50ed33e9dfd640b249b4be3799d395.zip @@ -7,24 +11,15 @@ FetchContent_Declare( # For Windows: Prevent overriding the parent project's compiler/linker settings set(gtest_force_shared_crt ON CACHE BOOL "" FORCE) FetchContent_MakeAvailable(googletest) +set(CMAKE_CXX_STANDARD 14) +set(CMAKE_CXX_STANDARD_REQUIRED ON) +include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../include) -# 包含目录 -include_directories(${CMAKE_SOURCE_DIR}/src) -include_directories(${CMAKE_SOURCE_DIR}/include) - -# 启用测试 +include(CTest) enable_testing() -# 添加alert_manager的单元测试 -add_executable(test_alert_manager test_alert_manager.cpp ../src/alert_manager.cpp) +add_executable(CppGenerate_test test_alert_manager.cpp ../src/alert_manager.cpp) -# 设置UTF-8编码支持 -if(MSVC) - target_compile_options(test_alert_manager PRIVATE /utf-8) -endif() - -target_link_libraries(test_alert_manager gtest gmock gtest_main) - -# 注册测试 +target_link_libraries(CppGenerate_test gtest gmock gtest_main) include(GoogleTest) -gtest_discover_tests(test_alert_manager) \ No newline at end of file +gtest_discover_tests(CppGenerate_test) \ No newline at end of file diff --git a/tests/CMakeLists2.txt b/tests/CMakeLists2.txt new file mode 100644 index 0000000..4d2e498 --- /dev/null +++ b/tests/CMakeLists2.txt @@ -0,0 +1,30 @@ +# GoogleTest配置 +include(FetchContent) +FetchContent_Declare( + googletest + URL https://github.com/google/googletest/archive/03597a01ee50ed33e9dfd640b249b4be3799d395.zip +) +# For Windows: Prevent overriding the parent project's compiler/linker settings +set(gtest_force_shared_crt ON CACHE BOOL "" FORCE) +FetchContent_MakeAvailable(googletest) + +# 包含目录 +include_directories(${CMAKE_SOURCE_DIR}/src) +include_directories(${CMAKE_SOURCE_DIR}/include) + +# 启用测试 +enable_testing() + +# 添加alert_manager的单元测试 +add_executable(test_alert_manager test_alert_manager.cpp ../src/alert_manager.cpp) + +# 设置UTF-8编码支持 +if(MSVC) + target_compile_options(test_alert_manager PRIVATE /utf-8) +endif() + +target_link_libraries(test_alert_manager gtest gmock gtest_main) + +# 注册测试 +include(GoogleTest) +gtest_discover_tests(test_alert_manager) \ No newline at end of file