fix(test): improve Windows compatibility of the test suite - #1312
Open
beatenevo wants to merge 4 commits into
Open
fix(test): improve Windows compatibility of the test suite#1312beatenevo wants to merge 4 commits into
beatenevo wants to merge 4 commits into
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Which issue or RFC does this PR close?
Closes #1308.
Rationale for this change
The PowerContext test suite runs successfully on Windows, but five tests failed.Because they assumed POSIX filesystem behavior, Unix permission bits, the platform default text encoding, or POSIX SQLite path formatting. These failures did not indicate runtime or end-to-end failures. The changes make the existing tests portable across Windows and Mac/Linux without changing production behavior.

What changes are included in this PR?
SeCreateSymbolicLinkPrivilegeand raisedWinError 1314stat()does not expose POSIX0o600permission bitsencoding="utf-8"stat()does not expose POSIX0o600permission bitssqlite_url()helperNo production runtime code, generated API code, or public API was changed.
Are there any user-facing changes?
No. This PR only updates platform-specific test assumptions.
How was this change tested?
Tested on Windows 10 with Python 3.12.4.
uv sync --link-mode=copyuv run python -m pytest tests/builtin/artifacts/skill tests/codex_plugin/test_contract.py tests/codex_plugin/test_recall.py tests/test_server.py -q78 passeduv run python -m pytest tests/e2e -qpasseduv run python -m pytest --doctest-modules -q -rs625 passed, 14 skippeduv run ruff check tests/builtin/artifacts/skill/test_external.py tests/codex_plugin/test_contract.py tests/codex_plugin/test_recall.py tests/test_server.pypassedThe skipped tests require a dedicated OceanBase test database, a configured Vec1 extension, or intentionally cover a POSIX virtual-environment symlink scenario.The test run also emitted intermittent Windows

access violationdiagnostics,but pytest exited successfully with no test failures.AI usage statement
OpenAI Codex was used to implement and test these changes.