.gitignore added
[dotfiles/.git] / .config / coc / extensions / coc-go-data / tools / pkg / mod / golang.org / x / tools@v0.1.0 / go / analysis / passes / buildtag / buildtag_test.go
diff --git a/.config/coc/extensions/coc-go-data/tools/pkg/mod/golang.org/x/tools@v0.1.0/go/analysis/passes/buildtag/buildtag_test.go b/.config/coc/extensions/coc-go-data/tools/pkg/mod/golang.org/x/tools@v0.1.0/go/analysis/passes/buildtag/buildtag_test.go
new file mode 100644 (file)
index 0000000..110343c
--- /dev/null
@@ -0,0 +1,34 @@
+// 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 buildtag_test
+
+import (
+       "testing"
+
+       "golang.org/x/tools/go/analysis"
+       "golang.org/x/tools/go/analysis/analysistest"
+       "golang.org/x/tools/go/analysis/passes/buildtag"
+)
+
+func Test(t *testing.T) {
+       analyzer := *buildtag.Analyzer
+       analyzer.Run = func(pass *analysis.Pass) (interface{}, error) {
+               defer func() {
+                       // The buildtag pass is unusual in that it checks the IgnoredFiles.
+                       // After analysis, add IgnoredFiles to OtherFiles so that
+                       // the test harness checks for expected diagnostics in those.
+                       // (The test harness shouldn't do this by default because most
+                       // passes can't do anything with the IgnoredFiles without type
+                       // information, which is unavailable because they are ignored.)
+                       var files []string
+                       files = append(files, pass.OtherFiles...)
+                       files = append(files, pass.IgnoredFiles...)
+                       pass.OtherFiles = files
+               }()
+
+               return buildtag.Analyzer.Run(pass)
+       }
+       analysistest.Run(t, analysistest.TestData(), &analyzer, "a")
+}