All checks were successful
Build and Test / build (pull_request) Successful in 29m11s
Phase 1e: Add C++ gtest and Python unittest coverage for the pluggable solver system introduced in Phases 1a-1d. C++ tests (KCSolve_tests_run): - SolverRegistryTest (8 tests): register/get, duplicates, defaults, available list, joints_for capability queries - OndselAdapterTest (10 tests): identity checks, supported/unsupported joints, Fixed/Revolute solve round-trips, no-grounded-parts handling, exception safety, drag protocol (pre_drag/drag_step/post_drag), redundant constraint diagnostics Python tests (TestSolverIntegration): - Full-stack solve via AssemblyObject → IKCSolver → OndselAdapter - Fixed joint placement matching, revolute joint success - No-ground error code (-6), redundancy detection (-2) - ASMT export produces non-empty file - Deterministic solve stability (solve twice → same result)
17 lines
348 B
CMake
17 lines
348 B
CMake
# SPDX-License-Identifier: LGPL-2.1-or-later
|
|
|
|
add_subdirectory(App)
|
|
add_subdirectory(Solver)
|
|
|
|
if (NOT FREECAD_USE_EXTERNAL_ONDSELSOLVER)
|
|
target_include_directories(Assembly_tests_run PUBLIC
|
|
${CMAKE_SOURCE_DIR}/src/3rdParty/OndselSolver
|
|
)
|
|
endif ()
|
|
|
|
target_link_libraries(Assembly_tests_run
|
|
gtest_main
|
|
${Google_Tests_LIBS}
|
|
Assembly
|
|
)
|