53 lines
1.2 KiB
CMake
53 lines
1.2 KiB
CMake
|
cmake_minimum_required(VERSION 3.10)
|
|||
|
|
|||
|
# 设置测试项目
|
|||
|
set(TEST_PROJECT_NAME "mcp_tests")
|
|||
|
project(${TEST_PROJECT_NAME})
|
|||
|
|
|||
|
# 设置C++标准
|
|||
|
set(CMAKE_CXX_STANDARD 17)
|
|||
|
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
|||
|
|
|||
|
# 使用本地的Google Test
|
|||
|
set(GTEST_ROOT ${CMAKE_CURRENT_SOURCE_DIR}/googletest)
|
|||
|
add_subdirectory(${GTEST_ROOT} googletest-build)
|
|||
|
|
|||
|
# 对于旧版本的CMake,需要设置这个选项
|
|||
|
set(gtest_force_shared_crt ON CACHE BOOL "" FORCE)
|
|||
|
|
|||
|
# 包含头文件目录
|
|||
|
include_directories(${CMAKE_SOURCE_DIR}/include)
|
|||
|
include_directories(${CMAKE_SOURCE_DIR}/common)
|
|||
|
include_directories(${GTEST_ROOT}/googletest/include)
|
|||
|
include_directories(${GTEST_ROOT}/googlemock/include)
|
|||
|
|
|||
|
# 添加测试源文件
|
|||
|
set(TEST_SOURCES
|
|||
|
test_mcp_message.cpp
|
|||
|
test_mcp_tool.cpp
|
|||
|
test_mcp_resource.cpp
|
|||
|
test_mcp_client.cpp
|
|||
|
test_mcp_server.cpp
|
|||
|
)
|
|||
|
|
|||
|
# 创建测试可执行文件
|
|||
|
add_executable(${TEST_PROJECT_NAME} ${TEST_SOURCES})
|
|||
|
|
|||
|
# 链接Google Test和MCP库
|
|||
|
target_link_libraries(${TEST_PROJECT_NAME} PRIVATE
|
|||
|
gtest
|
|||
|
gtest_main
|
|||
|
gmock
|
|||
|
gmock_main
|
|||
|
mcp
|
|||
|
Threads::Threads
|
|||
|
)
|
|||
|
|
|||
|
# 启用测试
|
|||
|
enable_testing()
|
|||
|
|
|||
|
# 添加测试
|
|||
|
add_test(
|
|||
|
NAME ${TEST_PROJECT_NAME}
|
|||
|
COMMAND ${TEST_PROJECT_NAME}
|
|||
|
)
|