diff options
author | Kali Kaneko (leap communications) <kali@leap.se> | 2019-01-18 16:45:30 +0100 |
---|---|---|
committer | Kali Kaneko (leap communications) <kali@leap.se> | 2019-01-24 02:11:08 +0100 |
commit | ce354a6afbf1813c9a5565a00f6937c1b6fd1e42 (patch) | |
tree | 5f8fef7e2879a8aec6e8c22302c4fce5e46e7083 /vendor/golang.org/x/tools/go/ast/astutil/rewrite_test.go | |
parent | 56dd0f4dfdc33594502ec02421425c3432570be3 (diff) |
[pkg] remove vendoring of golang/x/*
I think there's no need of vendoring this.
The debian package builds fine without them - at least with the text-dev
package in testing.
Diffstat (limited to 'vendor/golang.org/x/tools/go/ast/astutil/rewrite_test.go')
-rw-r--r-- | vendor/golang.org/x/tools/go/ast/astutil/rewrite_test.go | 248 |
1 files changed, 0 insertions, 248 deletions
diff --git a/vendor/golang.org/x/tools/go/ast/astutil/rewrite_test.go b/vendor/golang.org/x/tools/go/ast/astutil/rewrite_test.go deleted file mode 100644 index 1c86970..0000000 --- a/vendor/golang.org/x/tools/go/ast/astutil/rewrite_test.go +++ /dev/null @@ -1,248 +0,0 @@ -// Copyright 2017 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 astutil_test - -import ( - "bytes" - "go/ast" - "go/format" - "go/parser" - "go/token" - "testing" - - "golang.org/x/tools/go/ast/astutil" -) - -var rewriteTests = [...]struct { - name string - orig, want string - pre, post astutil.ApplyFunc -}{ - {name: "nop", orig: "package p\n", want: "package p\n"}, - - {name: "replace", - orig: `package p - -var x int -`, - want: `package p - -var t T -`, - post: func(c *astutil.Cursor) bool { - if _, ok := c.Node().(*ast.ValueSpec); ok { - c.Replace(valspec("t", "T")) - return false - } - return true - }, - }, - - {name: "set doc strings", - orig: `package p - -const z = 0 - -type T struct{} - -var x int -`, - want: `package p -// a foo is a foo -const z = 0 -// a foo is a foo -type T struct{} -// a foo is a foo -var x int -`, - post: func(c *astutil.Cursor) bool { - if _, ok := c.Parent().(*ast.GenDecl); ok && c.Name() == "Doc" && c.Node() == nil { - c.Replace(&ast.CommentGroup{List: []*ast.Comment{{Text: "// a foo is a foo"}}}) - } - return true - }, - }, - - {name: "insert names", - orig: `package p - -const a = 1 -`, - want: `package p - -const a, b, c = 1, 2, 3 -`, - pre: func(c *astutil.Cursor) bool { - if _, ok := c.Parent().(*ast.ValueSpec); ok { - switch c.Name() { - case "Names": - c.InsertAfter(ast.NewIdent("c")) - c.InsertAfter(ast.NewIdent("b")) - case "Values": - c.InsertAfter(&ast.BasicLit{Kind: token.INT, Value: "3"}) - c.InsertAfter(&ast.BasicLit{Kind: token.INT, Value: "2"}) - } - } - return true - }, - }, - - {name: "insert", - orig: `package p - -var ( - x int - y int -) -`, - want: `package p - -var before1 int -var before2 int - -var ( - x int - y int -) -var after2 int -var after1 int -`, - pre: func(c *astutil.Cursor) bool { - if _, ok := c.Node().(*ast.GenDecl); ok { - c.InsertBefore(vardecl("before1", "int")) - c.InsertAfter(vardecl("after1", "int")) - c.InsertAfter(vardecl("after2", "int")) - c.InsertBefore(vardecl("before2", "int")) - } - return true - }, - }, - - {name: "delete", - orig: `package p - -var x int -var y int -var z int -`, - want: `package p - -var y int -var z int -`, - pre: func(c *astutil.Cursor) bool { - n := c.Node() - if d, ok := n.(*ast.GenDecl); ok && d.Specs[0].(*ast.ValueSpec).Names[0].Name == "x" { - c.Delete() - } - return true - }, - }, - - {name: "insertafter-delete", - orig: `package p - -var x int -var y int -var z int -`, - want: `package p - -var x1 int - -var y int -var z int -`, - pre: func(c *astutil.Cursor) bool { - n := c.Node() - if d, ok := n.(*ast.GenDecl); ok && d.Specs[0].(*ast.ValueSpec).Names[0].Name == "x" { - c.InsertAfter(vardecl("x1", "int")) - c.Delete() - } - return true - }, - }, - - {name: "delete-insertafter", - orig: `package p - -var x int -var y int -var z int -`, - want: `package p - -var y int -var x1 int -var z int -`, - pre: func(c *astutil.Cursor) bool { - n := c.Node() - if d, ok := n.(*ast.GenDecl); ok && d.Specs[0].(*ast.ValueSpec).Names[0].Name == "x" { - c.Delete() - // The cursor is now effectively atop the 'var y int' node. - c.InsertAfter(vardecl("x1", "int")) - } - return true - }, - }, -} - -func valspec(name, typ string) *ast.ValueSpec { - return &ast.ValueSpec{Names: []*ast.Ident{ast.NewIdent(name)}, - Type: ast.NewIdent(typ), - } -} - -func vardecl(name, typ string) *ast.GenDecl { - return &ast.GenDecl{ - Tok: token.VAR, - Specs: []ast.Spec{valspec(name, typ)}, - } -} - -func TestRewrite(t *testing.T) { - t.Run("*", func(t *testing.T) { - for _, test := range rewriteTests { - test := test - t.Run(test.name, func(t *testing.T) { - t.Parallel() - fset := token.NewFileSet() - f, err := parser.ParseFile(fset, test.name, test.orig, parser.ParseComments) - if err != nil { - t.Fatal(err) - } - n := astutil.Apply(f, test.pre, test.post) - var buf bytes.Buffer - if err := format.Node(&buf, fset, n); err != nil { - t.Fatal(err) - } - got := buf.String() - if got != test.want { - t.Errorf("got:\n\n%s\nwant:\n\n%s\n", got, test.want) - } - }) - } - }) -} - -var sink ast.Node - -func BenchmarkRewrite(b *testing.B) { - for _, test := range rewriteTests { - b.Run(test.name, func(b *testing.B) { - for i := 0; i < b.N; i++ { - b.StopTimer() - fset := token.NewFileSet() - f, err := parser.ParseFile(fset, test.name, test.orig, parser.ParseComments) - if err != nil { - b.Fatal(err) - } - b.StartTimer() - sink = astutil.Apply(f, test.pre, test.post) - } - }) - } -} |