add_executable(test_mcp_tools
  contract/test_mcp_tools.cpp
)
target_include_directories(test_mcp_tools PRIVATE ${PROJECT_SOURCE_DIR}/src)
target_link_libraries(test_mcp_tools PRIVATE kom_dal)
target_compile_options(test_mcp_tools PRIVATE -fexceptions)

add_test(NAME contract_mcp_tools COMMAND test_mcp_tools)

add_executable(contract_memory
  contract_memory.cpp
)
target_include_directories(contract_memory PRIVATE ${PROJECT_SOURCE_DIR}/src)
target_link_libraries(contract_memory PRIVATE kom_dal)
target_compile_options(contract_memory PRIVATE -fexceptions)

add_test(NAME contract_memory COMMAND contract_memory)

add_executable(test_memory_exchange
  mcp/test_memory_exchange.cpp
)
target_include_directories(test_memory_exchange PRIVATE ${PROJECT_SOURCE_DIR}/src)
target_link_libraries(test_memory_exchange PRIVATE kom_dal)
target_compile_options(test_memory_exchange PRIVATE -fexceptions)

add_test(NAME mcp_memory_exchange COMMAND test_memory_exchange)

add_test(
  NAME e2e_mcp_test
  COMMAND /bin/bash ${CMAKE_CURRENT_SOURCE_DIR}/e2e_mcp_test.sh
  WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
)
