mirror of
https://github.com/golang/go
synced 2024-11-06 07:36:13 -07:00
0ae87fff1b
except the race was a symptom of a larger problem, so the fix actually invovles cleaning up the way we run command line tests totally to have common shared infrastructure, and also to clean up the way we handle errors and paths into the temporary directory Fixes: golang/go#35436 Change-Id: I4c5602607bb70e082056132baa3d4b0f8df6b13b Reviewed-on: https://go-review.googlesource.com/c/tools/+/208269 Run-TryBot: Ian Cottrell <iancottrell@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Rebecca Stambler <rstambler@golang.org>
31 lines
739 B
Go
31 lines
739 B
Go
// Copyright 2019 The Go Authors. All rights reserved.
|
|
// Use of this source code is governed by a BSD-style
|
|
// license that can be found in the LICENSE file.
|
|
|
|
package cmdtest
|
|
|
|
import (
|
|
"encoding/json"
|
|
"testing"
|
|
|
|
"golang.org/x/tools/internal/lsp/protocol"
|
|
"golang.org/x/tools/internal/lsp/tests"
|
|
"golang.org/x/tools/internal/span"
|
|
)
|
|
|
|
func (r *runner) Link(t *testing.T, uri span.URI, wantLinks []tests.Link) {
|
|
m, err := r.data.Mapper(uri)
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
out, _ := r.NormalizeGoplsCmd(t, "links", "-json", uri.Filename())
|
|
var got []protocol.DocumentLink
|
|
err = json.Unmarshal([]byte(out), &got)
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
if diff := tests.DiffLinks(m, wantLinks, got); diff != "" {
|
|
t.Error(diff)
|
|
}
|
|
}
|