// Copyright 2020 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 regtest import ( "testing" ) func TestStdlibReferences(t *testing.T) { const files = ` -- go.mod -- module mod.com -- main.go -- package main import "fmt" func main() { fmt.Print() } ` run(t, files, func(t *testing.T, env *Env) { env.OpenFile("main.go") file, pos := env.GoToDefinition("main.go", env.RegexpSearch("main.go", `fmt.(Print)`)) refs, err := env.Editor.References(env.Ctx, file, pos) if err != nil { t.Fatal(err) } if len(refs) != 2 { t.Fatalf("got %v reference(s), want 2", len(refs)) } // The first reference is guaranteed to be the definition. if got, want := refs[1].URI, env.Sandbox.Workdir.URI("main.go"); got != want { t.Errorf("found reference in %v, wanted %v", got, want) } }) }