some deletions
[dotfiles/.git] / .config / coc / extensions / coc-go-data / tools / pkg / mod / golang.org / x / tools@v0.0.0-20201028153306-37f0764111ff / internal / gopathwalk / walk_test.go
diff --git a/.config/coc/extensions/coc-go-data/tools/pkg/mod/golang.org/x/tools@v0.0.0-20201028153306-37f0764111ff/internal/gopathwalk/walk_test.go b/.config/coc/extensions/coc-go-data/tools/pkg/mod/golang.org/x/tools@v0.0.0-20201028153306-37f0764111ff/internal/gopathwalk/walk_test.go
deleted file mode 100644 (file)
index 2d887a6..0000000
+++ /dev/null
@@ -1,175 +0,0 @@
-// Copyright 2018 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 gopathwalk
-
-import (
-       "io/ioutil"
-       "log"
-       "os"
-       "path/filepath"
-       "reflect"
-       "runtime"
-       "strings"
-       "sync"
-       "testing"
-)
-
-func TestShouldTraverse(t *testing.T) {
-       switch runtime.GOOS {
-       case "windows", "plan9":
-               t.Skipf("skipping symlink-requiring test on %s", runtime.GOOS)
-       }
-
-       dir, err := ioutil.TempDir("", "goimports-")
-       if err != nil {
-               t.Fatal(err)
-       }
-       defer os.RemoveAll(dir)
-
-       // Note: mapToDir prepends "src" to each element, since
-       // mapToDir was made for creating GOPATHs.
-       if err := mapToDir(dir, map[string]string{
-               "foo/foo2/file.txt":        "",
-               "foo/foo2/link-to-src":     "LINK:../../",
-               "foo/foo2/link-to-src-foo": "LINK:../../foo",
-               "foo/foo2/link-to-dot":     "LINK:.",
-               "bar/bar2/file.txt":        "",
-               "bar/bar2/link-to-src-foo": "LINK:../../foo",
-
-               "a/b/c": "LINK:../../a/d",
-               "a/d/e": "LINK:../../a/b",
-       }); err != nil {
-               t.Fatal(err)
-       }
-       tests := []struct {
-               dir  string
-               file string
-               want bool
-       }{
-               {
-                       dir:  "src/foo/foo2",
-                       file: "link-to-src-foo",
-                       want: false, // loop
-               },
-               {
-                       dir:  "src/foo/foo2",
-                       file: "link-to-src",
-                       want: false, // loop
-               },
-               {
-                       dir:  "src/foo/foo2",
-                       file: "link-to-dot",
-                       want: false, // loop
-               },
-               {
-                       dir:  "src/bar/bar2",
-                       file: "link-to-src-foo",
-                       want: true, // not a loop
-               },
-               {
-                       dir:  "src/a/b/c",
-                       file: "e",
-                       want: false, // loop: "e" is the same as "b".
-               },
-       }
-       for i, tt := range tests {
-               fi, err := os.Stat(filepath.Join(dir, tt.dir, tt.file))
-               if err != nil {
-                       t.Errorf("%d. Stat = %v", i, err)
-                       continue
-               }
-               var w walker
-               got := w.shouldTraverse(filepath.Join(dir, tt.dir), fi)
-               if got != tt.want {
-                       t.Errorf("%d. shouldTraverse(%q, %q) = %v; want %v", i, tt.dir, tt.file, got, tt.want)
-               }
-       }
-}
-
-// TestSkip tests that various goimports rules are followed in non-modules mode.
-func TestSkip(t *testing.T) {
-       dir, err := ioutil.TempDir("", "goimports-")
-       if err != nil {
-               t.Fatal(err)
-       }
-       defer os.RemoveAll(dir)
-
-       if err := mapToDir(dir, map[string]string{
-               "ignoreme/f.go":     "package ignoreme",     // ignored by .goimportsignore
-               "node_modules/f.go": "package nodemodules;", // ignored by hardcoded node_modules filter
-               "v/f.go":            "package v;",           // ignored by hardcoded vgo cache rule
-               "mod/f.go":          "package mod;",         // ignored by hardcoded vgo cache rule
-               "shouldfind/f.go":   "package shouldfind;",  // not ignored
-
-               ".goimportsignore": "ignoreme\n",
-       }); err != nil {
-               t.Fatal(err)
-       }
-
-       var found []string
-       var mu sync.Mutex
-       walkDir(Root{filepath.Join(dir, "src"), RootGOPATH},
-               func(root Root, dir string) {
-                       mu.Lock()
-                       defer mu.Unlock()
-                       found = append(found, dir[len(root.Path)+1:])
-               }, func(root Root, dir string) bool {
-                       return false
-               }, Options{ModulesEnabled: false, Logf: log.Printf})
-       if want := []string{"shouldfind"}; !reflect.DeepEqual(found, want) {
-               t.Errorf("expected to find only %v, got %v", want, found)
-       }
-}
-
-// TestSkipFunction tests that scan successfully skips directories from user callback.
-func TestSkipFunction(t *testing.T) {
-       dir, err := ioutil.TempDir("", "goimports-")
-       if err != nil {
-               t.Fatal(err)
-       }
-       defer os.RemoveAll(dir)
-
-       if err := mapToDir(dir, map[string]string{
-               "ignoreme/f.go":           "package ignoreme",    // ignored by skip
-               "ignoreme/subignore/f.go": "package subignore",   // also ignored by skip
-               "shouldfind/f.go":         "package shouldfind;", // not ignored
-       }); err != nil {
-               t.Fatal(err)
-       }
-
-       var found []string
-       var mu sync.Mutex
-       walkDir(Root{filepath.Join(dir, "src"), RootGOPATH},
-               func(root Root, dir string) {
-                       mu.Lock()
-                       defer mu.Unlock()
-                       found = append(found, dir[len(root.Path)+1:])
-               }, func(root Root, dir string) bool {
-                       return strings.HasSuffix(dir, "ignoreme")
-               },
-               Options{ModulesEnabled: false})
-       if want := []string{"shouldfind"}; !reflect.DeepEqual(found, want) {
-               t.Errorf("expected to find only %v, got %v", want, found)
-       }
-}
-
-func mapToDir(destDir string, files map[string]string) error {
-       for path, contents := range files {
-               file := filepath.Join(destDir, "src", path)
-               if err := os.MkdirAll(filepath.Dir(file), 0755); err != nil {
-                       return err
-               }
-               var err error
-               if strings.HasPrefix(contents, "LINK:") {
-                       err = os.Symlink(strings.TrimPrefix(contents, "LINK:"), file)
-               } else {
-                       err = ioutil.WriteFile(file, []byte(contents), 0644)
-               }
-               if err != nil {
-                       return err
-               }
-       }
-       return nil
-}