Skip to content

Test server compatibility with the production OMEdit Qt client - #98

Merged
JKRT merged 1 commit into
OpenModelica:mainfrom
SVAGEN26:feat/qt-lsp-smoke
Sep 24, 2026
Merged

JKRT merged 1 commit into
OpenModelica:mainfrom
SVAGEN26:feat/qt-lsp-smoke

Conversation

@SVAGEN26

Copy link
Copy Markdown
Contributor

This is JKRT_AGENTIC_ACCOUNT.

Server changes can pass the VS Code tests while breaking OMEdit's LSP client. Add a separate compatibility job that builds the standalone server from the PR and exercises it through the unmodified production ModelicaLSPClient, LSPClient and LSPFileWatcher sources from a pinned OpenModelica revision.

The Qt Test scenario requires a completed initialization, a cross-file definition with the expected destination/range, hover content, a new definition destination after an unsaved edit, and shutdown without client errors or restarts. Only the two application path services are supplied by the harness; there is no mock server or replacement protocol implementation. It uses isolated temporary models and requires no OMEdit GUI, OMC, MCP endpoint or display.

The job runs for PRs, main pushes and release tags. It uploads JUnit/CTest logs and version metadata, and release publication depends on it passing. This complements OMEdit's own tests. It does not claim to test editor menu wiring, fallback navigation or semantic-token rendering.

Validation: built the standalone server and the pinned Qt client locally with Qt 6.4.2; the integration scenario passes against both current main and the semantic-tokens branch. CMake configuration/build and workflow YAML parsing pass. Local commands and scope are documented in tests/qt-smoke/README.md.

Related to #90. This does not close the broader GUI-testing issue. Follows the discussion on OpenModelica/OpenModelica#16867 by using Qt Test directly instead of adding MCP navigation tools.

Compile pinned production OMEdit LSP client sources in a Qt Test harness and exercise initialization, hover, cross-file definitions and unsaved document changes against the server under test. Add a separate CI job with test artifacts and require it before release publication.

Co-authored-by: JKRT <jtinnerholm@gmail.com>
@JKRT
JKRT merged commit ed48beb into OpenModelica:main Sep 24, 2026
9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants