some deletions
[dotfiles/.git] / .config / coc / extensions / coc-go-data / tools / pkg / mod / golang.org / x / tools@v0.0.0-20201028153306-37f0764111ff / go / callgraph / static / static_test.go
diff --git a/.config/coc/extensions/coc-go-data/tools/pkg/mod/golang.org/x/tools@v0.0.0-20201028153306-37f0764111ff/go/callgraph/static/static_test.go b/.config/coc/extensions/coc-go-data/tools/pkg/mod/golang.org/x/tools@v0.0.0-20201028153306-37f0764111ff/go/callgraph/static/static_test.go
deleted file mode 100644 (file)
index e1bfcd7..0000000
+++ /dev/null
@@ -1,88 +0,0 @@
-// Copyright 2014 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 static_test
-
-import (
-       "fmt"
-       "go/parser"
-       "reflect"
-       "sort"
-       "testing"
-
-       "golang.org/x/tools/go/callgraph"
-       "golang.org/x/tools/go/callgraph/static"
-       "golang.org/x/tools/go/loader"
-       "golang.org/x/tools/go/ssa/ssautil"
-)
-
-const input = `package P
-
-type C int
-func (C) f()
-
-type I interface{f()}
-
-func f() {
-       p := func() {}
-       g()
-       p() // SSA constant propagation => static
-
-       if unknown {
-               p = h
-       }
-       p() // dynamic
-
-       C(0).f()
-}
-
-func g() {
-       var i I = C(0)
-       i.f()
-}
-
-func h()
-
-var unknown bool
-`
-
-func TestStatic(t *testing.T) {
-       conf := loader.Config{ParserMode: parser.ParseComments}
-       f, err := conf.ParseFile("P.go", input)
-       if err != nil {
-               t.Fatal(err)
-       }
-
-       conf.CreateFromFiles("P", f)
-       iprog, err := conf.Load()
-       if err != nil {
-               t.Fatal(err)
-       }
-
-       P := iprog.Created[0].Pkg
-
-       prog := ssautil.CreateProgram(iprog, 0)
-       prog.Build()
-
-       cg := static.CallGraph(prog)
-
-       var edges []string
-       callgraph.GraphVisitEdges(cg, func(e *callgraph.Edge) error {
-               edges = append(edges, fmt.Sprintf("%s -> %s",
-                       e.Caller.Func.RelString(P),
-                       e.Callee.Func.RelString(P)))
-               return nil
-       })
-       sort.Strings(edges)
-
-       want := []string{
-               "(*C).f -> (C).f",
-               "f -> (C).f",
-               "f -> f$1",
-               "f -> g",
-       }
-       if !reflect.DeepEqual(edges, want) {
-               t.Errorf("Got edges %v, want %v", edges, want)
-       }
-}