code-climate: add default severity (#3294)
Co-authored-by: Fernandez Ludovic <ldez@users.noreply.github.com>
This commit is contained in:
parent
c1e24c1507
commit
6740559b13
@ -12,6 +12,8 @@ import (
|
||||
"github.com/golangci/golangci-lint/pkg/result"
|
||||
)
|
||||
|
||||
const defaultCheckstyleSeverity = "error"
|
||||
|
||||
type checkstyleOutput struct {
|
||||
XMLName xml.Name `xml:"checkstyle"`
|
||||
Version string `xml:"version,attr"`
|
||||
@ -31,8 +33,6 @@ type checkstyleError struct {
|
||||
Source string `xml:"source,attr"`
|
||||
}
|
||||
|
||||
const defaultCheckstyleSeverity = "error"
|
||||
|
||||
type Checkstyle struct {
|
||||
w io.Writer
|
||||
}
|
||||
|
@ -9,8 +9,12 @@ import (
|
||||
"github.com/golangci/golangci-lint/pkg/result"
|
||||
)
|
||||
|
||||
// CodeClimateIssue is a subset of the Code Climate spec - https://github.com/codeclimate/spec/blob/master/SPEC.md#data-types
|
||||
// It is just enough to support GitLab CI Code Quality - https://docs.gitlab.com/ee/user/project/merge_requests/code_quality.html
|
||||
const defaultCodeClimateSeverity = "critical"
|
||||
|
||||
// CodeClimateIssue is a subset of the Code Climate spec.
|
||||
// https://github.com/codeclimate/platform/blob/master/spec/analyzers/SPEC.md#data-types
|
||||
// It is just enough to support GitLab CI Code Quality.
|
||||
// https://docs.gitlab.com/ee/user/project/merge_requests/code_quality.html
|
||||
type CodeClimateIssue struct {
|
||||
Description string `json:"description"`
|
||||
Severity string `json:"severity,omitempty"`
|
||||
@ -40,6 +44,7 @@ func (p CodeClimate) Print(ctx context.Context, issues []result.Issue) error {
|
||||
codeClimateIssue.Location.Path = issue.Pos.Filename
|
||||
codeClimateIssue.Location.Lines.Begin = issue.Pos.Line
|
||||
codeClimateIssue.Fingerprint = issue.Fingerprint()
|
||||
codeClimateIssue.Severity = defaultCodeClimateSeverity
|
||||
|
||||
if issue.Severity != "" {
|
||||
codeClimateIssue.Severity = issue.Severity
|
||||
|
@ -1,4 +1,3 @@
|
||||
//nolint:dupl
|
||||
package printers
|
||||
|
||||
import (
|
||||
@ -42,6 +41,21 @@ func TestCodeClimate_Print(t *testing.T) {
|
||||
Column: 9,
|
||||
},
|
||||
},
|
||||
{
|
||||
FromLinter: "linter-c",
|
||||
Text: "issue c",
|
||||
SourceLines: []string{
|
||||
"func foo() {",
|
||||
"\tfmt.Println(\"ccc\")",
|
||||
"}",
|
||||
},
|
||||
Pos: token.Position{
|
||||
Filename: "path/to/filec.go",
|
||||
Offset: 6,
|
||||
Line: 200,
|
||||
Column: 2,
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
buf := new(bytes.Buffer)
|
||||
@ -51,7 +65,7 @@ func TestCodeClimate_Print(t *testing.T) {
|
||||
require.NoError(t, err)
|
||||
|
||||
//nolint:lll
|
||||
expected := `[{"description":"linter-a: some issue","severity":"warning","fingerprint":"BA73C5DF4A6FD8462FFF1D3140235777","location":{"path":"path/to/filea.go","lines":{"begin":10}}},{"description":"linter-b: another issue","severity":"error","fingerprint":"0777B4FE60242BD8B2E9B7E92C4B9521","location":{"path":"path/to/fileb.go","lines":{"begin":300}}}]`
|
||||
expected := `[{"description":"linter-a: some issue","severity":"warning","fingerprint":"BA73C5DF4A6FD8462FFF1D3140235777","location":{"path":"path/to/filea.go","lines":{"begin":10}}},{"description":"linter-b: another issue","severity":"error","fingerprint":"0777B4FE60242BD8B2E9B7E92C4B9521","location":{"path":"path/to/fileb.go","lines":{"begin":300}}},{"description":"linter-c: issue c","severity":"critical","fingerprint":"BEE6E9FBB6BFA4B7DB9FB036697FB036","location":{"path":"path/to/filec.go","lines":{"begin":200}}}]`
|
||||
|
||||
assert.Equal(t, expected, buf.String())
|
||||
}
|
||||
|
@ -1,3 +1,4 @@
|
||||
//nolint:dupl
|
||||
package printers
|
||||
|
||||
import (
|
||||
|
Loading…
x
Reference in New Issue
Block a user