Documentation ¶
Overview ¶
Package linttest provides linter testing utilities.
Index ¶
- func FindPHPFiles(root string) ([]string, error)
- func GetFileReports(t *testing.T, contents string) []*linter.Report
- func InitEmbeddedRules() error
- func ParseTestFile(t *testing.T, filename, content string) (rootNode *ir.Root, w *linter.RootWalker)
- func PrepareGoldenTestSuite(s *GoldenTestSuite, t *testing.T, baseDir, goldenFileName string)
- func RunFilterMatch(test *Suite, names ...string)
- func SimpleNegativeTest(t *testing.T, contents string)
- type GoldenE2ETestSuite
- type GoldenTestSuite
- type Suite
- func (s *Suite) AddFile(contents string)
- func (s *Suite) AddNamedFile(name, contents string)
- func (s *Suite) AddNolintFile(contents string)
- func (s *Suite) Match(reports []*linter.Report)
- func (s *Suite) ReadAndAddFiles(files []string)
- func (s *Suite) RunAndMatch()
- func (s *Suite) RunFilterLinter(filters []string) []*linter.Report
- func (s *Suite) RunLinter() []*linter.Report
- type TestFile
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func FindPHPFiles ¶ added in v0.3.0
func GetFileReports ¶
GetFileReports runs linter over a single file out of given content and returns all reports that were found.
func InitEmbeddedRules ¶ added in v0.3.0
func InitEmbeddedRules() error
InitEmbeddedRules initializes embedded rules for testing.
func ParseTestFile ¶
func ParseTestFile(t *testing.T, filename, content string) (rootNode *ir.Root, w *linter.RootWalker)
ParseTestFile parses given test file.
func PrepareGoldenTestSuite ¶ added in v0.3.0
func PrepareGoldenTestSuite(s *GoldenTestSuite, t *testing.T, baseDir, goldenFileName string)
PrepareGoldenTestSuite configures fields and standard stubs.
Used if the structure was created directly.
func RunFilterMatch ¶ added in v0.3.0
RunFilterMatch calls Match with the filtered results of RunLinter.
func SimpleNegativeTest ¶
SimpleNegativeTest runs linter over a single file out of given content and expects there to be no warnings.
For positive testing, use Suite type directly.
Types ¶
type GoldenE2ETestSuite ¶ added in v0.3.0
type GoldenE2ETestSuite struct {
// contains filtered or unexported fields
}
func NewGoldenE2ETestSuite ¶ added in v0.3.0
func NewGoldenE2ETestSuite(t *testing.T) *GoldenE2ETestSuite
func (*GoldenE2ETestSuite) AddTest ¶ added in v0.3.0
func (s *GoldenE2ETestSuite) AddTest(test *GoldenTestSuite)
func (*GoldenE2ETestSuite) BuildNoVerify ¶ added in v0.3.0
func (s *GoldenE2ETestSuite) BuildNoVerify()
func (*GoldenE2ETestSuite) RemoveNoVerify ¶ added in v0.3.0
func (s *GoldenE2ETestSuite) RemoveNoVerify()
func (*GoldenE2ETestSuite) RemoveTestsFiles ¶ added in v0.3.0
func (s *GoldenE2ETestSuite) RemoveTestsFiles()
func (*GoldenE2ETestSuite) Run ¶ added in v0.3.0
func (s *GoldenE2ETestSuite) Run()
func (*GoldenE2ETestSuite) RunOnlyTests ¶ added in v0.3.0
func (s *GoldenE2ETestSuite) RunOnlyTests()
type GoldenTestSuite ¶ added in v0.3.0
type GoldenTestSuite struct { Name string Deps []string Disable []string OnlyE2E bool Gitignore bool Baseline bool SrcDir string BaseDir string GoldenFileName string // contains filtered or unexported fields }
func NewGoldenTestSuite ¶ added in v0.3.0
func NewGoldenTestSuite(t *testing.T, name, baseDir, goldenFileName string) *GoldenTestSuite
NewGoldenTestSuite returns a new golden test suite for t.
func (*GoldenTestSuite) AddDeps ¶ added in v0.3.0
func (s *GoldenTestSuite) AddDeps(deps []string)
func (*GoldenTestSuite) AddDisabled ¶ added in v0.3.0
func (s *GoldenTestSuite) AddDisabled(disabled []string)
func (*GoldenTestSuite) Run ¶ added in v0.3.0
func (s *GoldenTestSuite) Run()
type Suite ¶
type Suite struct { Files []TestFile Expect []string AllowDisable *regexp.Regexp LoadStubs []string MisspellList string IgnoreUndeclaredChecks bool // contains filtered or unexported fields }
Suite is a configurable test runner for linter.
Use NewSuite to create usable instance.
func (*Suite) AddFile ¶
AddFile adds a file to a suite file list. File gets an auto-generated name. If custom name is important, use AddNamedFile.
func (*Suite) AddNamedFile ¶ added in v0.3.0
AddNamedFile adds a file with a specific name to a suite file list.
func (*Suite) AddNolintFile ¶
AddNolintFile adds a file to a suite file list that will be parsed, but not linted. File gets an auto-generated name. If custom name is important, append a properly initialized TestFile to a s Files slice directly.
func (*Suite) Match ¶
Match tries to match every report against Expect list of s.
If expect slice is nil or empty, only nil (or empty) reports slice would match it.
func (*Suite) ReadAndAddFiles ¶ added in v0.3.0
ReadAndAddFiles read and adds a files to a suite file list.
func (*Suite) RunAndMatch ¶
func (s *Suite) RunAndMatch()
RunAndMatch calls Match with the results of RunLinter.
This is a recommended way to use the Suite, but if reports slice is needed, one can use RunLinter directly.
func (*Suite) RunFilterLinter ¶ added in v0.3.0
RunFilterLinter calls RunLinter with the filter.