...
1
2
3
4
5 package findcall_test
6
7 import (
8 "testing"
9
10 "golang.org/x/tools/go/analysis/analysistest"
11 "golang.org/x/tools/go/analysis/passes/findcall"
12 )
13
14 func init() {
15 findcall.Analyzer.Flags.Set("name", "println")
16 }
17
18
19
20
21
22 func TestFromStringLiterals(t *testing.T) {
23
24 for _, test := range [...]struct {
25 desc string
26 pkgpath string
27 files map[string]string
28 }{
29 {
30 desc: "SimpleTest",
31 pkgpath: "main",
32 files: map[string]string{"main/main.go": `package main // want package:"found"
33
34 func main() {
35 println("hello") // want "call of println"
36 print("goodbye") // not a call of println
37 }
38
39 func println(s string) {} // want println:"found"`,
40 },
41 },
42 } {
43 t.Run(test.desc, func(t *testing.T) {
44 dir, cleanup, err := analysistest.WriteFiles(test.files)
45 if err != nil {
46 t.Fatal(err)
47 }
48 defer cleanup()
49 analysistest.Run(t, dir, findcall.Analyzer, test.pkgpath)
50 })
51 }
52 }
53
54
55
56
57
58
59
60
61
62
63 func TestFromFileSystem(t *testing.T) {
64 testdata := analysistest.TestData()
65 analysistest.RunWithSuggestedFixes(t, testdata, findcall.Analyzer, "a")
66 }
67
View as plain text