Просмотр исходного кода

Sarif results with empty rules now represents as [] instead of null/nil (#786)

Chris Wolf 4 лет назад
Родитель
Сommit
d1f642a9df
1 измененных файлов с 12 добавлено и 1 удалено
  1. 12 1
      report/sarif.go

+ 12 - 1
report/sarif.go

@@ -30,13 +30,24 @@ func getRuns(cfg config.Config, findings []Finding) []Runs {
 }
 
 func getTool(cfg config.Config) Tool {
-	return Tool{
+	tool := Tool{
 		Driver: Driver{
 			Name:            driver,
 			SemanticVersion: version,
 			Rules:           getRules(cfg),
 		},
 	}
+
+	// if this tool has no rules, ensure that it is represented as [] instead of null/nil
+	if hasEmptyRules(tool) {
+		tool.Driver.Rules = make([]Rules, 0)
+	}
+
+	return tool
+}
+
+func hasEmptyRules(tool Tool) bool {
+	return len(tool.Driver.Rules) == 0
 }
 
 func getRules(cfg config.Config) []Rules {