Refactor the yaml data package to group data sources by category
This commit is contained in:
@@ -160,6 +160,10 @@ func TestGenerateReportWritesReportAndPreflight(t *testing.T) {
|
||||
}
|
||||
if !strings.Contains(string(data), "schema_version: weatherreporter.data_package.v2") ||
|
||||
!strings.Contains(string(data), "recent_changes:") ||
|
||||
!strings.Contains(string(data), "applicable_risk_products:") ||
|
||||
!strings.Contains(string(data), "derived_summaries:") ||
|
||||
!strings.Contains(string(data), "narrative_products:") ||
|
||||
!strings.Contains(string(data), "raw_data:") ||
|
||||
!strings.Contains(string(data), "current_conditions:") ||
|
||||
!strings.Contains(string(data), "narrative_forecast:") ||
|
||||
!strings.Contains(string(data), "hourly_forecast:") ||
|
||||
@@ -169,13 +173,19 @@ func TestGenerateReportWritesReportAndPreflight(t *testing.T) {
|
||||
if strings.Contains(string(data), "source_warnings:") {
|
||||
t.Fatalf("data package has source warnings, want none for complete fetched sources:\n%s", string(data))
|
||||
}
|
||||
currentIndex := strings.Index(string(data), " current_conditions:")
|
||||
narrativeIndex := strings.Index(string(data), " narrative_forecast:")
|
||||
summaryIndex := strings.Index(string(data), " derived_daily_summary:")
|
||||
outdoorIndex := strings.Index(string(data), " outdoor_windows:")
|
||||
hourlyIndex := strings.Index(string(data), " hourly_forecast:")
|
||||
if currentIndex < 0 || narrativeIndex < 0 || summaryIndex < 0 || outdoorIndex < 0 || hourlyIndex < 0 || !(currentIndex < narrativeIndex && narrativeIndex < summaryIndex && outdoorIndex < hourlyIndex) {
|
||||
t.Fatalf("data package stanza order is wrong, want current_conditions then narrative_forecast then derived_daily_summary and final hourly_forecast:\n%s", string(data))
|
||||
riskIndex := strings.Index(string(data), " applicable_risk_products:")
|
||||
derivedIndex := strings.Index(string(data), " derived_summaries:")
|
||||
narrativeIndex := strings.Index(string(data), " narrative_products:")
|
||||
rawIndex := strings.Index(string(data), " raw_data:")
|
||||
alertIndex := strings.Index(string(data), " alert_digest:")
|
||||
summaryIndex := strings.Index(string(data), " derived_daily_summary:")
|
||||
storyIndex := strings.Index(string(data), " weather_story:")
|
||||
currentIndex := strings.Index(string(data), " current_conditions:")
|
||||
hourlyIndex := strings.Index(string(data), " hourly_forecast:")
|
||||
if riskIndex < 0 || derivedIndex < 0 || narrativeIndex < 0 || rawIndex < 0 || alertIndex < 0 || summaryIndex < 0 || storyIndex < 0 || currentIndex < 0 || hourlyIndex < 0 ||
|
||||
!(riskIndex < derivedIndex && derivedIndex < narrativeIndex && narrativeIndex < rawIndex) ||
|
||||
!(riskIndex < alertIndex && derivedIndex < summaryIndex && narrativeIndex < storyIndex && rawIndex < currentIndex && currentIndex < hourlyIndex) {
|
||||
t.Fatalf("data package grouping is wrong, want categorized prompt stanzas:\n%s", string(data))
|
||||
}
|
||||
savedDataPackage, err := promptinput.LoadYAML(data)
|
||||
if err != nil {
|
||||
|
||||
Reference in New Issue
Block a user