Description
The vscode-pyright extension currently has no automated tests, only for pyright-internals. The interpreter-resolution logic in extension.ts is needs manuall testing.
This came up in #1860, which adds support for the new Python Environments API alongside the classic ms-python.python API. That change is entirely untested in CI, and it's exactly the kind of logic that regresses easily and is annoying to test by hand.
Suggestion
A test setup for the extension so this and future interpreter-resolution changes can be covered automatically.
Integration tests via @vscode/test-electron that launch a real extension host, install the relevant extensions, switch interpreters, and assert basedpyright resolves against the expected environment.
I don't see the need for unit-tests.
I maintain a set of python test fixtures for uv-auto-venv — small Python projects with differing dependencies, so missing/failed imports surface immediately. These would work well as fixtures for the integration tests here (raised originally in #1860).
Open question
Should I only prepare the test-setup and let you write the tests? Or do I also write the test with the help of AI and you do the review?
Description
The vscode-pyright extension currently has no automated tests, only for pyright-internals. The interpreter-resolution logic in extension.ts is needs manuall testing.
This came up in #1860, which adds support for the new Python Environments API alongside the classic ms-python.python API. That change is entirely untested in CI, and it's exactly the kind of logic that regresses easily and is annoying to test by hand.
Suggestion
A test setup for the extension so this and future interpreter-resolution changes can be covered automatically.
Integration tests via @vscode/test-electron that launch a real extension host, install the relevant extensions, switch interpreters, and assert basedpyright resolves against the expected environment.
I don't see the need for unit-tests.
I maintain a set of python test fixtures for uv-auto-venv — small Python projects with differing dependencies, so missing/failed imports surface immediately. These would work well as fixtures for the integration tests here (raised originally in #1860).
Open question
Should I only prepare the test-setup and let you write the tests? Or do I also write the test with the help of AI and you do the review?