# ANSODEngine Unit Test
add_executable(ANSODEngine-UnitTest
    ANSODEngine-UnitTest.cpp
    ANSODTest.cpp
    ANSODTest.h
    ANSSAM3-UnitTest.cpp
    CustomModel-StressTest.cpp
    yolov10.h
    Yolov10OV.h
    Yolov10RT.h
)

target_include_directories(ANSODEngine-UnitTest PRIVATE
    ${CMAKE_CURRENT_SOURCE_DIR}
    ${CMAKE_SOURCE_DIR}/modules/ANSODEngine
    ${CMAKE_SOURCE_DIR}/modules/ANSODEngine/CUDA
    ${CMAKE_SOURCE_DIR}/modules/ANSLPR
    ${CMAKE_SOURCE_DIR}/modules/ANSLPR/include
    ${CMAKE_SOURCE_DIR}/modules/ANSOCR/ANSPaddleOCR
    ${CMAKE_SOURCE_DIR}/modules/ANSOCR/ANSPaddleOCR/include
    ${CMAKE_SOURCE_DIR}/modules/ANSMOT
    ${CMAKE_SOURCE_DIR}/engines/ONNXEngine
    ${CMAKE_SOURCE_DIR}/engines/OpenVINOEngine/include
    ${CMAKE_SOURCE_DIR}/engines/TensorRTAPI/include
    ${ANSLIBS_DIR}/OpenVINO/samples/cpp/common
    ${SHARED_INCLUDE_DIR}
    ${ANSLIBS_DIR}/pybind11/include
    ${ANSLIBS_DIR}/Python311/include
)

target_link_libraries(ANSODEngine-UnitTest
    PRIVATE ANSODEngine
    PRIVATE ANSLicensingSystem
    PRIVATE ANSLPR
    PRIVATE ANSMOT
    PRIVATE opencv
    PRIVATE onnxruntime
    PRIVATE openvino
    PRIVATE tensorrt
    PRIVATE boost
    PRIVATE python311
    PRIVATE CUDA::cudart
)

if(WIN32)
    target_link_libraries(ANSODEngine-UnitTest PRIVATE ${WIN_COMMON_LIBS})
endif()

target_compile_definitions(ANSODEngine-UnitTest PRIVATE UNICODE _UNICODE)
