Files
TA-Deployment-Broker/internal/app/server_test.go
T
David Schroeder 90d5b637ac update audit view
2026-07-25 15:50:06 -05:00

79 lines
1.8 KiB
Go

package app
import (
"io"
"testing"
"time"
)
func TestPortalTemplateExecutes(t *testing.T) {
t.Parallel()
templates, err := parseTemplates()
if err != nil {
t.Fatal(err)
}
err = templates.ExecuteTemplate(io.Discard, "portal.html", pageData{
Title: "Test",
Technician: &technician{DisplayName: "Technician"},
Packages: []packageRecord{{
ID: 1,
Slug: "sentinelone-linux",
DisplayName: "SentinelOne Linux Agent",
PackageVersion: "26.1.1.31",
Enabled: true,
}},
Actions: []actionRecord{{
Slug: "install-rmm",
DisplayName: "Install RMM",
Enabled: true,
}},
Authorizations: []authorizationRecord{{
ID: 1,
CreatedBy: "taiadmin",
ExpiresAt: time.Now().Add(time.Hour),
Packages: "SentinelOne Linux Agent",
Actions: "Install RMM",
}},
})
if err != nil {
t.Fatal(err)
}
}
func TestPackageAndAuditTemplatesExecute(t *testing.T) {
t.Parallel()
templates, err := parseTemplates()
if err != nil {
t.Fatal(err)
}
data := pageData{
Title: "Test",
Technician: &technician{DisplayName: "Technician"},
CSRFToken: "csrf",
CurrentView: "packages",
Packages: []packageRecord{{
ID: 1,
Slug: "sentinelone-linux",
DisplayName: "SentinelOne Linux Agent",
PackageVersion: "26.1.1.31",
Enabled: true,
}},
}
if err := templates.ExecuteTemplate(io.Discard, "packages.html", data); err != nil {
t.Fatal(err)
}
data.CurrentView = "audit"
data.AuditFilters.TimeRange = "30d"
data.AuditEventTypes = []string{"package_downloaded"}
data.AuditEvents = []auditRecord{{
EventType: "package_downloaded",
CustomerLabel: "Acme cluster refresh",
Hostname: "pve01",
CreatedAt: time.Now(),
}}
if err := templates.ExecuteTemplate(io.Discard, "audit.html", data); err != nil {
t.Fatal(err)
}
}