This commit is contained in:
David Schroeder
2026-07-25 18:42:09 -05:00
parent 7a02c50aa9
commit ec57321577
11 changed files with 136 additions and 28 deletions
+37 -2
View File
@@ -1,14 +1,16 @@
package app
import (
"bytes"
"io"
"strings"
"testing"
"time"
)
func TestPortalTemplateExecutes(t *testing.T) {
t.Parallel()
templates, err := parseTemplates()
templates, err := parseTemplates(time.UTC)
if err != nil {
t.Fatal(err)
}
@@ -42,7 +44,7 @@ func TestPortalTemplateExecutes(t *testing.T) {
func TestPackageAndAuditTemplatesExecute(t *testing.T) {
t.Parallel()
templates, err := parseTemplates()
templates, err := parseTemplates(time.UTC)
if err != nil {
t.Fatal(err)
}
@@ -70,9 +72,42 @@ func TestPackageAndAuditTemplatesExecute(t *testing.T) {
EventType: "package_downloaded",
CustomerLabel: "Acme cluster refresh",
Hostname: "pve01",
SourceIP: "203.0.113.10",
LANIP: "10.10.1.25",
CreatedAt: time.Now(),
}}
if err := templates.ExecuteTemplate(io.Discard, "audit.html", data); err != nil {
t.Fatal(err)
}
}
func TestAuditTemplateUsesConfiguredTimeZone(t *testing.T) {
t.Parallel()
location, err := time.LoadLocation("America/Chicago")
if err != nil {
t.Fatal(err)
}
templates, err := parseTemplates(location)
if err != nil {
t.Fatal(err)
}
var output bytes.Buffer
err = templates.ExecuteTemplate(&output, "audit.html", pageData{
Title: "Test",
Technician: &technician{DisplayName: "Technician"},
CurrentView: "audit",
AuditFilters: auditFilters{
TimeRange: "30d",
},
AuditEvents: []auditRecord{{
EventType: "code_exchanged",
CreatedAt: time.Date(2026, time.January, 15, 12, 0, 0, 0, time.UTC),
}},
})
if err != nil {
t.Fatal(err)
}
if !strings.Contains(output.String(), "Jan 15, 2026 6:00 AM CST") {
t.Fatalf("audit timestamp was not rendered in America/Chicago: %s", output.String())
}
}