Repository navigation
Conversation
- Add the native test target with shared ActiveX sources and test hooks. - Register per-test discovery, runtime dependencies, and XML reports with CTest. - Document CMake test workflows and preserve the MSBuild activation path. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- Classify the MSBuild ActiveX intermediate path replaced by CMake MIDL output. - Keep the test-target parity report focused on unexplained flag differences. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
pmeems
left a comment
There was a problem hiding this comment.
Automated review. Final decision is with the human reviewer.
Reviewed the CMake/CTest test integration against AGENTS.md and docs/ (BUILDING, TESTING, CMAKE-MIGRATION, CODING-STANDARDS). Verified source parity between the new tests/MapWinGIS.Core.Tests/CMakeLists.txt and the MSBuild .vcxproj (identical 17 TUs + TestData.h, MWG_ENABLE_RENDERER_TEST_HOOKS on both), the vcpkg tests feature wiring for MWG_BUILD_TESTS, and the extra_skill_dirs-style propagation of MWG_ACTIVEX_SHARED_SOURCES via PARENT_SCOPE. CI (x64 Debug) passes. One behavioral claim was verified empirically with a local CMake 4.4.2 + Ninja repro (see the Major comment on tests/MapWinGIS.Core.Tests/CMakeLists.txt). Non-blocking note: the PR title repeats the epic title rather than this phase's scope (GoogleTest/CTest integration); consider retitling for the merge log.
- Omit the redundant configuration argument for activation tests. - Rely on preset filtering and align the compile-difference table. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- Integrate the latest CMake phase 2 base. - Keep CMake test sources and activation helper aligned with the split test projects. - Preserve the CTest preset behavior and review fixes. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Summary
Adds
MapWinGIS.Core.Teststo the CMake build with the existing GoogleTest sources, shared ActiveX sources, renderer test hooks, MIDL interface, and runtime dependencies. CTest discovers individual cases before test execution, writes per-test XML, and includes a labeled interactive activation check. The activation script accepts an optional-BinDirectory; its existing MSBuild default is unchanged. CMake testing and reporting are documented.This layer is based on PR #41 (
cmake-phase-2-activex).Validation
json-c.dllandjpeg62.dll.Translatesample TU/link (Phase 4). The interactive per-user COM activation test and CLion UI discovery/debug workflow were not verified here.