Update the today report template

This commit is contained in:
2026-06-15 11:01:03 -05:00
parent 63dfc0b55a
commit 58fe794227
4 changed files with 41 additions and 451 deletions

View File

@@ -35,11 +35,14 @@ func TestTodayTemplateLookup(t *testing.T) {
if err != nil {
t.Fatalf("Template() error = %v", err)
}
for _, want := range []string{"# {{ .Report.Title }}", "**Forecast date:**", "## Current Conditions", "## Daypart Forecast", "## Planning Notes", "## Forecast Discussion"} {
for _, want := range []string{"# {{ .Report.Title }}", "**Forecast date:**", "## Current Conditions", "## Daypart Forecast", "## Forecast Discussion"} {
if !strings.Contains(source, want) {
t.Fatalf("template missing %q:\n%s", want, source)
}
}
if strings.Contains(source, "## Planning Notes") {
t.Fatalf("template includes Planning Notes section:\n%s", source)
}
}
func TestSchemaLookup(t *testing.T) {
@@ -365,8 +368,12 @@ func TestRenderToday(t *testing.T) {
},
Modules: testTodayModules{
CurrentConditions: &testCurrentConditions{
ConditionTextLower: "clear",
TemperatureF: intPtr(58),
ConditionTextLower: "clear",
TemperatureF: intPtr(58),
ApparentTemperatureF: intPtr(57),
RelativeHumidityPercent: intPtr(61),
WindDirectionText: "northwest",
WindSpeedMph: intPtr(9),
},
Dayparts: []testTomorrowDaypart{
{
@@ -393,6 +400,12 @@ func TestRenderToday(t *testing.T) {
MentionPrecipitation: true,
},
},
{
Key: "evening",
Summary: testDaypartSummary{
DisplayName: "Evening",
},
},
},
PrecipTiming: &testPrecipTiming{
PrecipitationWindows: []testPrecipWindow{
@@ -414,14 +427,11 @@ func TestRenderToday(t *testing.T) {
"**Forecast date:** Monday, June 15, 2026",
"**Updated:** Monday, June 15, 2026 at 7:14 AM",
"Today starts dry before showers return later in the day.",
"Currently, it is 58°F and clear.",
"Currently, it is 58°F and clear. It feels like 57°F, with a relative humidity of 61% and winds from the northwest at 9 mph.",
"- **Morning:** Sunny, with temperatures rising from the upper 50s to the upper 60s.",
"- **Afternoon:** Showers, with temperatures in the upper 70s. Chance of precipitation is 70%.",
"- **3:00 PM** to **6:00 PM**: Precipitation is expected during this period. The peak precipitation chance is 70% at 3:00 PM.",
"A few showers may linger into early evening.",
"## Planning Notes",
"- Morning weather looks routine.",
"- Watch late-day shower timing.",
"Clouds increase after sunrise.",
"Rain chances peak during the afternoon.",
} {
@@ -436,9 +446,13 @@ func TestRenderToday(t *testing.T) {
"- **Morning:**",
"- **Afternoon:**",
"## Precipitation Timing",
"## Planning Notes",
"## Forecast Discussion",
})
for _, unwanted := range []string{"## Planning Notes", "Morning weather looks routine.", "Watch late-day shower timing.", "- **Evening:**", "Forecast details are limited"} {
if strings.Contains(text, unwanted) {
t.Fatalf("rendered template included %q:\n%s", unwanted, text)
}
}
}
func TestRenderTomorrowOmitsPrecipitationTimingWithoutWindows(t *testing.T) {