github.com/vanstinator/golangci-lint@v0.0.0-20240223191551-cc572f00d9d1/pkg/golinters/testpackage.go (about) 1 package golinters 2 3 import ( 4 "strings" 5 6 "github.com/maratori/testpackage/pkg/testpackage" 7 "golang.org/x/tools/go/analysis" 8 9 "github.com/vanstinator/golangci-lint/pkg/config" 10 "github.com/vanstinator/golangci-lint/pkg/golinters/goanalysis" 11 ) 12 13 func NewTestpackage(cfg *config.TestpackageSettings) *goanalysis.Linter { 14 var a = testpackage.NewAnalyzer() 15 16 var settings map[string]map[string]any 17 if cfg != nil { 18 settings = map[string]map[string]any{ 19 a.Name: { 20 testpackage.SkipRegexpFlagName: cfg.SkipRegexp, 21 testpackage.AllowPackagesFlagName: strings.Join(cfg.AllowPackages, ","), 22 }, 23 } 24 } 25 26 return goanalysis.NewLinter(a.Name, a.Doc, []*analysis.Analyzer{a}, settings). 27 WithLoadMode(goanalysis.LoadModeSyntax) 28 }