Files
Eric F d398a6ced2 Add extracted tools: CitrineOS, OpenOCPP, ShapeShifter
- CitrineOS core extracted (CSMS OCPP 2.0.1)
- OpenOCPP extracted (firmware OCPP 1.6J/2.0.1)
- ShapeShifter library installed (pip install -e)
- ShapeShifter specification extracted
- EVerest extracted

TODO updated with progress
2026-06-08 00:38:27 -04:00

79 lines
2.0 KiB
CMake

set(TEST_TARGET_NAME ${PROJECT_NAME}_rpcapi_tests)
set(TEST_SOURCES
../data/DataStore.cpp
../data/SessionInfo.cpp
../helpers/Conversions.cpp
../helpers/ErrorHandler.cpp
../helpers/LimitDecimalPlaces.cpp
../rpc/RpcHandler.cpp
../rpc/methods/Api.cpp
../rpc/methods/ChargePoint.cpp
../rpc/methods/Evse.cpp
../rpc/notifications/Evse.cpp
../rpc/notifications/ChargePoint.cpp
../server/WebsocketServer.cpp
server/WebsocketServerTests.cpp
rpc/RpcHandlerTests.cpp
)
add_executable(${TEST_TARGET_NAME} ${TEST_SOURCES})
# The following is needed to import target compile definitions from the module
get_target_property(RPCAPI_COMPILE_DEFINITIONS ${MODULE_NAME} COMPILE_DEFINITIONS)
if (RPCAPI_COMPILE_DEFINITIONS)
target_compile_definitions(${TEST_TARGET_NAME} PRIVATE ${RPCAPI_COMPILE_DEFINITIONS})
endif()
set(INCLUDE_DIR
"../server"
"../rpc"
"../data"
".."
)
target_sources(${TEST_TARGET_NAME}
PRIVATE
"helpers/RequestHandlerDummy.cpp"
"helpers/WebSocketTestClient.cpp"
)
get_target_property(GENERATED_INCLUDE_DIR generate_cpp_files EVEREST_GENERATED_INCLUDE_DIR)
target_include_directories(${TEST_TARGET_NAME}
PUBLIC
${INCLUDE_DIR}
${GENERATED_INCLUDE_DIR}
)
if (DISABLE_EDM)
list(INSERT CMAKE_MODULE_PATH 0 "${CMAKE_CURRENT_SOURCE_DIR}/../cmake")
find_package(json-rpc-cxx REQUIRED)
target_include_directories(${TEST_TARGET_NAME}
PRIVATE
${json-rpc-cxx_INCLUDE_DIRS}
)
else()
message("RpcApi/tests: EDM is ensabled")
target_include_directories(${TEST_TARGET_NAME}
PRIVATE
$<TARGET_PROPERTY:json-rpc-cxx,INTERFACE_INCLUDE_DIRECTORIES>
)
endif()
target_link_libraries(${TEST_TARGET_NAME}
PRIVATE
GTest::gtest_main
date::date
date::date-tz
everest::framework
everest::log
everest::helpers
nlohmann_json::nlohmann_json
websockets_shared
)
add_test(${TEST_TARGET_NAME} ${TEST_TARGET_NAME})
ev_register_test_target(${TEST_TARGET_NAME})