golang / go

The Go programming language
https://go.dev
BSD 3-Clause "New" or "Revised" License
124.28k stars 17.7k forks source link

x/tools/internal/lsp/regtest: tracking various regtest improvements #39384

Closed findleyr closed 1 year ago

findleyr commented 4 years ago

This is a follow-up to #36879. We've been using the gopls regtests for a few months now, and several usability bugs / missing features / overall themes have emerged. None of these seemed worthy of an issue, but I want to track them in aggregate. I've been trying to let the regtests soak in their current form, but plan to take another pass soon.

Here's a list of what I've noted along the way, either from my own usage or feedback from others'. Feel free to comment with more, and I'll edit this comment to keep it up to date.

CC @pjweinbgo @stamblerre @heschik

gopherbot commented 4 years ago

Change https://golang.org/cl/240059 mentions this issue: internal/lsp/regtest: use a common directory regtests sandboxes

gopherbot commented 4 years ago

Change https://golang.org/cl/240058 mentions this issue: internal/lsp/fake: explicitly set GOPACKAGESDRIVER=off in regtests

gopherbot commented 4 years ago

Change https://golang.org/cl/241739 mentions this issue: internal/lsp/regtest: refactor to use a different options pattern

gopherbot commented 4 years ago

Change https://golang.org/cl/243057 mentions this issue: internal/lsp/regtest: simpler way to invert options

gopherbot commented 4 years ago

Change https://golang.org/cl/252683 mentions this issue: integration/regtest: use gopls hooks and add a test for staticcheck

gopherbot commented 4 years ago

Change https://golang.org/cl/252682 mentions this issue: gopls/integration/regtest: move regtests to the gopls module

gopherbot commented 4 years ago

Change https://golang.org/cl/255126 mentions this issue: gopls/internal/regtest: simplify expectation return values

gopherbot commented 3 years ago

Change https://golang.org/cl/283512 mentions this issue: gopls/internal/regtest: fix synchronization for TestUseGoplsMod

gopherbot commented 3 years ago

Change https://golang.org/cl/287572 mentions this issue: gopls/internal/regtest: split regtests up into multiple packages

gopherbot commented 2 years ago

Change https://go.dev/cl/416876 mentions this issue: internal/lsp/regtest: simplify, consolidate, and document settings

gopherbot commented 2 years ago

Change https://go.dev/cl/417587 mentions this issue: internal/lsp/regtest: allow sharing memoized results across regtests

gopherbot commented 2 years ago

Change https://go.dev/cl/418774 mentions this issue: internal/lsp/regtest: only run /singleton tests with -short

gopherbot commented 1 year ago

Change https://go.dev/cl/461801 mentions this issue: gopls/internal/regtest: eliminate EmptyDiagnostics

gopherbot commented 1 year ago

Change https://go.dev/cl/461915 mentions this issue: gopls/internal/regtest: add a simpler API for diagnostic expectations

gopherbot commented 1 year ago

Change https://go.dev/cl/461916 mentions this issue: gopls/internal/regtest: eliminate GoSumDiagnostic

gopherbot commented 1 year ago

Change https://go.dev/cl/461917 mentions this issue: gopls/internal/regtest: simplify OnceMet expressions with an env helper

gopherbot commented 1 year ago

Change https://go.dev/cl/461935 mentions this issue: gopls/internal/lsp/fake: use protocol types for the fake editor

gopherbot commented 1 year ago

Change https://go.dev/cl/461936 mentions this issue: gopls/internal/regtest: replace NoDiagnostics with NoMatchingDiagnostics

gopherbot commented 1 year ago

Change https://go.dev/cl/461937 mentions this issue: gopls/internal/regtest: eliminate DiagnosticAt

gopherbot commented 1 year ago

Change https://go.dev/cl/461938 mentions this issue: gopls/internal/regtest: eliminate DiagnosticsAtRegexpWithMessage

gopherbot commented 1 year ago

Change https://go.dev/cl/461939 mentions this issue: gopls/internal/regtest: eliminate DiagnosticAtRegexp

gopherbot commented 1 year ago

Change https://go.dev/cl/461897 mentions this issue: gopls/internal/regtest: clean up workspace symbol helpers

gopherbot commented 1 year ago

Change https://go.dev/cl/462495 mentions this issue: gopls/internal/regtest: use AfterChange in more places

findleyr commented 1 year ago

I think we've done enough here.