Files
xone_macos/tests/CMakeLists.txt
T
portersky 4f0f1ff75d feat: add IOKit-based USB transport
Replace the stub probe with a real IOKit/IOUSBFamily transport:
discovery by VID/PID, device and interface connections, vendor
control requests on EP0, bulk writes to EP 0x04 OUT, and an async
read pump (EP 0x05 IN / EP 0x04 IN) on a dedicated CFRunLoop
thread with disconnect notification.

Add the test_usb suite, link IOKit/CoreFoundation into xone_usb,
and update the README investigation checklist.

Co-Authored-By: qwen3.8-27b@q2_k_xl: implemented USB transport layer
2026-08-17 15:52:22 +02:00

55 lines
2.2 KiB
CMake

set(TEST_TARGETS "")
add_executable(test_usb test_usb.cpp)
target_include_directories(test_usb PRIVATE "${CMAKE_SOURCE_DIR}/include")
target_link_libraries(test_usb PRIVATE xone_usb Unity::Unity)
target_compile_features(test_usb PRIVATE cxx_std_23)
add_test(NAME test_usb COMMAND test_usb)
list(APPEND TEST_TARGETS test_usb)
add_executable(test_version test_version.cpp)
target_include_directories(test_version PRIVATE "${CMAKE_SOURCE_DIR}/include")
target_link_libraries(test_version PRIVATE xone_api Unity::Unity)
target_compile_features(test_version PRIVATE cxx_std_23)
target_compile_definitions(test_version PRIVATE XONE_VERSION="${PROJECT_VERSION}")
add_test(NAME test_version COMMAND test_version)
list(APPEND TEST_TARGETS test_version)
add_executable(test_types test_types.cpp)
target_include_directories(test_types PRIVATE "${CMAKE_SOURCE_DIR}/include")
target_link_libraries(test_types PRIVATE Unity::Unity)
target_compile_features(test_types PRIVATE cxx_std_23)
add_test(NAME test_types COMMAND test_types)
list(APPEND TEST_TARGETS test_types)
add_executable(test_crypto test_crypto.cpp)
target_include_directories(test_crypto PRIVATE "${CMAKE_SOURCE_DIR}/include")
target_link_libraries(test_crypto PRIVATE xone_auth Unity::Unity)
target_compile_features(test_crypto PRIVATE cxx_std_23)
add_test(NAME test_crypto COMMAND test_crypto)
list(APPEND TEST_TARGETS test_crypto)
add_executable(test_auth test_auth.cpp)
target_include_directories(test_auth PRIVATE "${CMAKE_SOURCE_DIR}/include")
target_link_libraries(test_auth PRIVATE xone_auth Unity::Unity)
target_compile_features(test_auth PRIVATE cxx_std_23)
add_test(NAME test_auth COMMAND test_auth)
list(APPEND TEST_TARGETS test_auth)
add_executable(test_gip test_gip.cpp)
target_include_directories(test_gip PRIVATE "${CMAKE_SOURCE_DIR}/include")
target_link_libraries(test_gip PRIVATE xone_gip Unity::Unity)
target_compile_features(test_gip PRIVATE cxx_std_23)
add_test(NAME test_gip COMMAND test_gip)
list(APPEND TEST_TARGETS test_gip)
add_custom_target(check
COMMAND ${CMAKE_CTEST_COMMAND}
--test-dir "${CMAKE_BINARY_DIR}"
--output-on-failure
--progress
WORKING_DIRECTORY "${CMAKE_BINARY_DIR}"
USES_TERMINAL
DEPENDS ${TEST_TARGETS}
)