blob: b0b09dddff5ef07f03eb508794098e073cb4dc45 [file] [log] [blame]
// 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 tests_test
import (
"testing"
"golang.org/x/tools/internal/analysisinternal"
"golang.org/x/tools/go/analysis/analysistest"
"golang.org/x/tools/go/analysis/passes/tests"
"golang.org/x/tools/internal/typeparams"
)
func Test(t *testing.T) {
// In 1.18, diagnostic for Fuzz Tests must not be used by cmd/vet.
// So the code for Fuzz tests diagnostics is guarded behind flag analysisinternal.DiagnoseFuzzTests
// Turn on the flag DiagnoseFuzzTests for analysis tests and then turn it off.
analysisinternal.DiagnoseFuzzTests = true
defer func() {
analysisinternal.DiagnoseFuzzTests = false
}()
testdata := analysistest.TestData()
pkgs := []string{
"a", // loads "a", "a [a.test]", and "a.test"
"b_x_test", // loads "b" and "b_x_test"
"divergent",
}
if typeparams.Enabled {
pkgs = append(pkgs, "typeparams")
}
analysistest.Run(t, testdata, tests.Analyzer, pkgs...)
}