Harden diagnostic handling and warning presentation
This commit is contained in:
@@ -868,6 +868,7 @@ type stateTestHarness struct {
|
||||
sessionIDs []string
|
||||
outputDiagnostics contracts.DiagnosticCollection
|
||||
includeWarnings bool
|
||||
includeWarningFile bool
|
||||
}
|
||||
|
||||
func newStateTestHarness() *stateTestHarness { return &stateTestHarness{} }
|
||||
@@ -1012,7 +1013,11 @@ func (o stateTestOutput) Encode(_ context.Context, req contracts.OutputRequest)
|
||||
if o.includeDiagnostics && len(req.Diagnostics.Groups) > 0 {
|
||||
data = []byte(fmt.Sprintf("{\"ok\":true,\"diagnostics\":%q}\n", req.Diagnostics.Groups[0].ReasonCode))
|
||||
}
|
||||
return contracts.OutputResult{Files: []contracts.OutputFile{{Name: "result.json", Bytes: data}}}, nil
|
||||
files := []contracts.OutputFile{{Name: "result.json", Bytes: data}}
|
||||
if o.harness.includeWarningFile {
|
||||
files = append(files, contracts.OutputFile{Name: "warnings.json", Bytes: []byte("{\"warnings\":true}\n")})
|
||||
}
|
||||
return contracts.OutputResult{Files: files}, nil
|
||||
}
|
||||
|
||||
func stateTestDiagnostic(scope, reasonCode, message string) contracts.ProducerDiagnostic {
|
||||
|
||||
Reference in New Issue
Block a user