diff --git a/pkg/result/processors/severity_rules.go b/pkg/result/processors/severity_rules.go index 5f11b541..7c9a4c1d 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 && p.defaultSeverity == "" { 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 d3ff6b2f..fdb874d1 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")) }