Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rebuild test subsystems #3523

Closed
15 of 17 tasks
firelizzard18 opened this issue Sep 5, 2024 · 2 comments
Closed
15 of 17 tasks

Rebuild test subsystems #3523

firelizzard18 opened this issue Sep 5, 2024 · 2 comments
Assignees
Labels
Go Companion Issues relating to the Go Companion extension

Comments

@firelizzard18
Copy link
Contributor

firelizzard18 commented Sep 5, 2024

Go Companion

Go Companion provides an alternative test explorer implementation that uses gopls to discover tests and addresses multiple issues with my original test explorer implementation (which is what vscode-go uses currently).

If you wish to use Go Companion's test explorer, you must:

  • Upgrade gopls. Either install from source or wait for v0.17 to be released.
  • Install the Go Companion extension.
  • Disable the old implementation by setting "go.testExplorer.enable": false.

I created this issue to track my work on rebuilding the test explorer and other test subsystems. This work will be done in a separate repository until it is sufficiently complete to merge.

Goals

  • Move test discovery out of the extension into gopls.
  • Improve code quality and robustness of VSCode's Testing API/provider.
  • Unify all test support into a single system.

Non-goals

  • Sophisticated subtest discovery. Test and subtest discovery will be handled by gopls instead of the extension, so no further work on the extension will be needed (barring unforeseen issues). Improvements to gopls's subtest discovery will be available as soon as they are released and the user updates gopls.

Tasks

Nice to have

@firelizzard18
Copy link
Contributor Author

@hyangah VSCode has commands for running tests at the cursor:

image

And also commands for rerunning the last test run:

image

It seems like a number of vscode-go's test commands could be deprecated. Maybe for the time being we replace them with calls to the vscode command and show a deprecation notification? WDYT?

@firelizzard18
Copy link
Contributor Author

I think this issue has served its purpose so I'm going to close it.

For future readers: once gopls v0.17 is prereleased and CL 613695 is merged, you can install Go Companion and vscode-go will automatically switch to the new implementation. Or you can install a bleeding edge version of gopls, install Go Companion, and manually disable vscode-go's test implementation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Go Companion Issues relating to the Go Companion extension
Projects
Status: Done
Development

No branches or pull requests

3 participants