Update buildRenderContext to use Definition.TemplateID instead of GeneratedTextSchemaID
This commit is contained in:
@@ -1118,11 +1118,11 @@ func validateGeneratedText(definition report.Definition, data []byte) (generated
|
||||
}
|
||||
|
||||
func buildRenderContext(definition report.Definition, metadata briefing.Metadata, snapshot module.Snapshot, hourly generatedtext.Hourly) (any, error) {
|
||||
switch definition.GeneratedTextSchemaID {
|
||||
switch definition.TemplateID {
|
||||
case "hourly":
|
||||
return generatedtext.BuildHourlyRenderContext(metadata, snapshot, hourly)
|
||||
default:
|
||||
return nil, fmt.Errorf("generated text schema %q is not supported for report %q", definition.GeneratedTextSchemaID, definition.ID)
|
||||
return nil, fmt.Errorf("report template %q is not supported for report %q", definition.TemplateID, definition.ID)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -799,7 +799,7 @@ func TestGenerateHourlyReportPreservesValidatedTextOnRenderContextFailure(t *tes
|
||||
}
|
||||
}
|
||||
|
||||
func TestGenerateHourlyReportPreservesRenderContextOnTemplateFailure(t *testing.T) {
|
||||
func TestGenerateHourlyReportRejectsUnsupportedTemplateBeforeRenderContext(t *testing.T) {
|
||||
cfg, resolved, store, notifier, outputPath := hourlyGeneratedTextFixture(t)
|
||||
resolved.Definition.TemplateID = "missing-template"
|
||||
renderer := &recordingRenderer{
|
||||
@@ -816,25 +816,18 @@ func TestGenerateHourlyReportPreservesRenderContextOnTemplateFailure(t *testing.
|
||||
Store: store,
|
||||
Notifier: notifier,
|
||||
})
|
||||
assertGeneratedReportError(t, err, resolved, "render template")
|
||||
assertGeneratedReportError(t, err, resolved, "build render context")
|
||||
assertNoGeneratedFailureSideEffects(t, notifier, outputPath)
|
||||
|
||||
paths := hourlyArtifactPaths(t, store, resolved)
|
||||
assertPathsExist(t, paths.Preflight, paths.Metadata, paths.GeneratedTextRaw, paths.GeneratedTextResult, paths.GeneratedText, paths.RenderContext)
|
||||
assertPathsMissing(t, paths.RenderedReport)
|
||||
renderContext, readErr := os.ReadFile(paths.RenderContext)
|
||||
if readErr != nil {
|
||||
t.Fatalf("read render context: %v", readErr)
|
||||
}
|
||||
if !strings.Contains(string(renderContext), `"ReportTitle": "Hourly Report"`) {
|
||||
t.Fatalf("render context was not preserved:\n%s", string(renderContext))
|
||||
}
|
||||
assertPathsExist(t, paths.Preflight, paths.Metadata, paths.GeneratedTextRaw, paths.GeneratedTextResult, paths.GeneratedText)
|
||||
assertPathsMissing(t, paths.RenderContext, paths.RenderedReport)
|
||||
metadataData, readErr := os.ReadFile(paths.Metadata)
|
||||
if readErr != nil {
|
||||
t.Fatalf("read metadata: %v", readErr)
|
||||
}
|
||||
if !strings.Contains(string(metadataData), paths.RenderContext) {
|
||||
t.Fatalf("metadata missing render context link:\n%s", string(metadataData))
|
||||
if !strings.Contains(string(metadataData), paths.GeneratedText) {
|
||||
t.Fatalf("metadata missing generated text link:\n%s", string(metadataData))
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user