golangci-lint/pkg/result/processors/uniq_by_line_test.go
2020-01-19 16:49:46 +03:00

45 lines
958 B
Go

package processors
import (
"go/token"
"testing"
"github.com/golangci/golangci-lint/pkg/config"
"github.com/golangci/golangci-lint/pkg/result"
)
func newFLIssue(file string, line int) result.Issue {
return result.Issue{
Pos: token.Position{
Filename: file,
Line: line,
},
}
}
func TestUniqByLine(t *testing.T) {
cfg := config.Config{}
cfg.Output.UniqByLine = true
p := NewUniqByLine(&cfg)
i1 := newFLIssue("f1", 1)
processAssertSame(t, p, i1)
processAssertEmpty(t, p, i1) // check skipping
processAssertEmpty(t, p, i1) // check accumulated error
processAssertSame(t, p, newFLIssue("f1", 2)) // another line
processAssertSame(t, p, newFLIssue("f2", 1)) // another file
}
func TestUniqByLineDisabled(t *testing.T) {
cfg := config.Config{}
cfg.Output.UniqByLine = false
p := NewUniqByLine(&cfg)
i1 := newFLIssue("f1", 1)
processAssertSame(t, p, i1)
processAssertSame(t, p, i1) // check the same issue passed twice
}