internal/lsp/lsprpc: update binder tests to handle forwarding

Update the new binder tests to run both with a standalone server, and
with a forwarding chain.

Make a few superficial improvements along the way as well.

Change-Id: Icd197698093a3f6149ab58171806b2388ed75b7f
Reviewed-on: https://go-review.googlesource.com/c/tools/+/321134
Trust: Robert Findley <rfindley@google.com>
Run-TryBot: Robert Findley <rfindley@google.com>
gopls-CI: kokoro <noreply+kokoro@google.com>
TryBot-Result: Go Bot <gobot@golang.org>
Reviewed-by: Ian Cottrell <iancottrell@google.com>
This commit is contained in:
Rob Findley 2021-05-19 11:51:44 -04:00 • committed by Robert Findley
commit 280ef9a723

View file

@ -57,11 +57,11 @@ func (f HandlerFunc) Handle(ctx context.Context, req *Request) (interface{}, err
return f(ctx, req)
}
// async is a small helper for things with an asynchronous result that you can
// wait for.
// async is a small helper for operations with an asynchronous result that you
// can wait for.
type async struct {
ready chan struct{}
errBox chan error
ready chan struct{} // signals that the operation has completed
errBox chan error // guards the operation result
}
func newAsync() *async {