| // Copyright 2021 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 misc |
| |
| import ( |
| "testing" |
| |
| . "golang.org/x/tools/gopls/internal/lsp/regtest" |
| ) |
| |
| func TestMultipleAdHocPackages(t *testing.T) { |
| Run(t, ` |
| -- a/a.go -- |
| package main |
| |
| import "fmt" |
| |
| func main() { |
| fmt.Println("") |
| } |
| -- a/b.go -- |
| package main |
| |
| import "fmt" |
| |
| func main() () { |
| fmt.Println("") |
| } |
| `, func(t *testing.T, env *Env) { |
| env.OpenFile("a/a.go") |
| if list := env.Completion("a/a.go", env.RegexpSearch("a/a.go", "Println")); list == nil || len(list.Items) == 0 { |
| t.Fatal("expected completions, got none") |
| } |
| env.OpenFile("a/b.go") |
| if list := env.Completion("a/b.go", env.RegexpSearch("a/b.go", "Println")); list == nil || len(list.Items) == 0 { |
| t.Fatal("expected completions, got none") |
| } |
| if list := env.Completion("a/a.go", env.RegexpSearch("a/a.go", "Println")); list == nil || len(list.Items) == 0 { |
| t.Fatal("expected completions, got none") |
| } |
| }) |
| } |