Skip to content

Commit

Permalink
syz-ci: improve test result aggregation
Browse files Browse the repository at this point in the history
If there is a crash with a report, prefer it to crashes without report.
  • Loading branch information
dvyukov committed May 10, 2019
1 parent 364acbc commit 7143d0b
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 1 deletion.
8 changes: 7 additions & 1 deletion syz-ci/jobs.go
Original file line number Diff line number Diff line change
Expand Up @@ -497,6 +497,7 @@ func aggregateTestResults(results []error) (*report.Report, error) {
// If all instances failed to boot, then we report one of these errors.
anySuccess := false
var anyErr, testErr error
var rep *report.Report
for _, res := range results {
if res == nil {
anySuccess = true
Expand All @@ -513,9 +514,14 @@ func aggregateTestResults(results []error) (*report.Report, error) {
testErr = fmt.Errorf("%v\n\n%s", err.Title, err.Output)
}
case *instance.CrashError:
return err.Report, nil
if rep == nil || (len(rep.Report) == 0 && len(err.Report.Report) != 0) {
rep = err.Report
}
}
}
if rep != nil {
return rep, nil
}
if anySuccess {
return nil, nil
}
Expand Down
12 changes: 12 additions & 0 deletions syz-ci/jobs_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -90,6 +90,18 @@ func TestAggregateTestResults(t *testing.T) {
title: "",
err: errors.New("infra error3"),
},
{
results: []error{
&instance.CrashError{Report: &report.Report{Title: "title1"}},
&instance.CrashError{Report: &report.Report{
Title: "title2",
Report: []byte("report"),
}},
&instance.CrashError{Report: &report.Report{Title: "title3"}},
},
title: "title2",
err: nil,
},
}
for i, test := range tests {
rep, err := aggregateTestResults(test.results)
Expand Down

0 comments on commit 7143d0b

Please sign in to comment.