Skip to content

Commit 6b719bc

Browse files
committed
Simplify summary output
This less verbose approach to the project and projects linting summary output provides the same amount of information in a more approachable format.
1 parent dccb221 commit 6b719bc

File tree

2 files changed

+27
-5
lines changed

2 files changed

+27
-5
lines changed

internal/result/result.go

Lines changed: 17 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -194,8 +194,15 @@ func (results Type) ProjectSummaryText(lintedProject project.Type) string {
194194
panic(fmt.Sprintf("Unable to find report for %v when generating report summary text", lintedProject.Path))
195195
}
196196

197-
projectSummaryReport := results.Projects[projectReportIndex].Summary
198-
return fmt.Sprintf("Finished linting project. Results:\nWarning count: %v\nError count: %v\nRules passed: %v", projectSummaryReport.WarningCount, projectSummaryReport.ErrorCount, projectSummaryReport.Pass)
197+
projectSummaryReport := "Linter results for project: "
198+
projectSummaryData := results.Projects[projectReportIndex].Summary
199+
if projectSummaryData.ErrorCount == 0 && projectSummaryData.WarningCount == 0 {
200+
projectSummaryReport += "no errors or warnings"
201+
} else {
202+
projectSummaryReport += fmt.Sprintf("%v ERRORS, %v WARNINGS", projectSummaryData.ErrorCount, projectSummaryData.WarningCount)
203+
}
204+
205+
return projectSummaryReport
199206
}
200207

201208
// AddSummary summarizes the rule results for all projects and adds it to the report.
@@ -220,7 +227,14 @@ func (results *Type) AddSummary() {
220227

221228
// SummaryText returns a text summary of the cumulative rule results.
222229
func (results Type) SummaryText() string {
223-
return fmt.Sprintf("Finished linting projects. Results:\nWarning count: %v\nError count: %v\nRules passed: %v", results.Summary.WarningCount, results.Summary.ErrorCount, results.Summary.Pass)
230+
summaryReport := "Linter results for projects: "
231+
if results.Summary.ErrorCount == 0 && results.Summary.WarningCount == 0 {
232+
summaryReport += "no errors or warnings"
233+
} else {
234+
summaryReport += fmt.Sprintf("%v ERRORS, %v WARNINGS", results.Summary.ErrorCount, results.Summary.WarningCount)
235+
}
236+
237+
return summaryReport
224238
}
225239

226240
// JSONReport returns a JSON formatted report of rules on all projects in string encoding.

internal/result/result_test.go

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -207,7 +207,11 @@ func TestAddProjectSummary(t *testing.T) {
207207
assert.Equal(t, testTable.expectedPass, results.Projects[0].Summary.Pass)
208208
assert.Equal(t, testTable.expectedWarningCount, results.Projects[0].Summary.WarningCount)
209209
assert.Equal(t, testTable.expectedErrorCount, results.Projects[0].Summary.ErrorCount)
210-
assert.Equal(t, fmt.Sprintf("Finished linting project. Results:\nWarning count: %v\nError count: %v\nRules passed: %v", testTable.expectedWarningCount, testTable.expectedErrorCount, testTable.expectedPass), results.ProjectSummaryText(lintedProject))
210+
if testTable.expectedErrorCount == 0 && testTable.expectedWarningCount == 0 {
211+
assert.Equal(t, "Linter results for project: no errors or warnings", results.ProjectSummaryText(lintedProject))
212+
} else {
213+
assert.Equal(t, fmt.Sprintf("Linter results for project: %v ERRORS, %v WARNINGS", testTable.expectedErrorCount, testTable.expectedWarningCount), results.ProjectSummaryText(lintedProject))
214+
}
211215
}
212216
}
213217

@@ -290,7 +294,11 @@ func TestAddSummary(t *testing.T) {
290294
assert.Equal(t, testTable.expectedPass, results.Passed())
291295
assert.Equal(t, testTable.expectedWarningCount, results.Summary.WarningCount)
292296
assert.Equal(t, testTable.expectedErrorCount, results.Summary.ErrorCount)
293-
assert.Equal(t, fmt.Sprintf("Finished linting projects. Results:\nWarning count: %v\nError count: %v\nRules passed: %v", testTable.expectedWarningCount, testTable.expectedErrorCount, testTable.expectedPass), results.SummaryText())
297+
if testTable.expectedErrorCount == 0 && testTable.expectedWarningCount == 0 {
298+
assert.Equal(t, "Linter results for projects: no errors or warnings", results.SummaryText())
299+
} else {
300+
assert.Equal(t, fmt.Sprintf("Linter results for projects: %v ERRORS, %v WARNINGS", testTable.expectedErrorCount, testTable.expectedWarningCount), results.SummaryText())
301+
}
294302
}
295303
}
296304

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy