From a531c69cb0cbbcd880fa8fd5f454c5a1e620cfef Mon Sep 17 00:00:00 2001 From: Adolfo Cueto Date: Fri, 25 Sep 2020 17:58:03 -0300 Subject: [PATCH 1/2] Added support for only specifying default severity --- pkg/result/processors/severity_rules.go | 2 +- pkg/result/processors/severity_rules_test.go | 31 ++++++++++++++++++++ 2 files changed, 32 insertions(+), 1 deletion(-) diff --git a/pkg/result/processors/severity_rules.go b/pkg/result/processors/severity_rules.go index 5f11b54101c9..817c75dfc416 100644 --- a/pkg/result/processors/severity_rules.go +++ b/pkg/result/processors/severity_rules.go @@ -57,7 +57,7 @@ func createSeverityRules(rules []SeverityRule, prefix string) []severityRule { } func (p SeverityRules) Process(issues []result.Issue) ([]result.Issue, error) { - if len(p.rules) == 0 { + if len(p.rules) == 0 && len(p.defaultSeverity) == 0 { return issues, nil } return transformIssues(issues, func(i *result.Issue) *result.Issue { diff --git a/pkg/result/processors/severity_rules_test.go b/pkg/result/processors/severity_rules_test.go index d3ff6b2f2c8f..fdb874d1c827 100644 --- a/pkg/result/processors/severity_rules_test.go +++ b/pkg/result/processors/severity_rules_test.go @@ -132,6 +132,37 @@ func TestSeverityRulesText(t *testing.T) { assert.Equal(t, texts, processedTexts) } +func TestSeverityRulesOnlyDefault(t *testing.T) { + lineCache := fsutils.NewLineCache(fsutils.NewFileCache()) + log := report.NewLogWrapper(logutils.NewStderrLog(""), &report.Data{}) + p := NewSeverityRules("info", []SeverityRule{}, lineCache, log) + + cases := []issueTestCase{ + {Path: "ssl.go", Text: "ssl", Linter: "gosec"}, + {Path: "empty.go", Text: "empty", Linter: "empty"}, + } + var issues []result.Issue + for _, c := range cases { + issues = append(issues, newIssueFromIssueTestCase(c)) + } + processedIssues := process(t, p, issues...) + var resultingCases []issueTestCase + for _, i := range processedIssues { + resultingCases = append(resultingCases, issueTestCase{ + Path: i.FilePath(), + Linter: i.FromLinter, + Text: i.Text, + Line: i.Line(), + Severity: i.Severity, + }) + } + expectedCases := []issueTestCase{ + {Path: "ssl.go", Text: "ssl", Linter: "gosec", Severity: "info"}, + {Path: "empty.go", Text: "empty", Linter: "empty", Severity: "info"}, + } + assert.Equal(t, expectedCases, resultingCases) +} + func TestSeverityRulesEmpty(t *testing.T) { processAssertSame(t, NewSeverityRules("", nil, nil, nil), newIssueFromTextTestCase("test")) } From 3cd76a7b167c44a4fbfd537bfbe2104d0f3675d7 Mon Sep 17 00:00:00 2001 From: Adolfo Cueto Date: Fri, 25 Sep 2020 18:04:59 -0300 Subject: [PATCH 2/2] Gocritic feedback --- pkg/result/processors/severity_rules.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkg/result/processors/severity_rules.go b/pkg/result/processors/severity_rules.go index 817c75dfc416..7c9a4c1d63a5 100644 --- a/pkg/result/processors/severity_rules.go +++ b/pkg/result/processors/severity_rules.go @@ -57,7 +57,7 @@ func createSeverityRules(rules []SeverityRule, prefix string) []severityRule { } func (p SeverityRules) Process(issues []result.Issue) ([]result.Issue, error) { - if len(p.rules) == 0 && len(p.defaultSeverity) == 0 { + if len(p.rules) == 0 && p.defaultSeverity == "" { return issues, nil } return transformIssues(issues, func(i *result.Issue) *result.Issue {