mirror of
https://github.com/komari-monitor/komari.git
synced 2026-11-11 08:42:39 +00:00
37 lines
1023 B
Go
37 lines
1023 B
Go
package messageSender
|
|
|
|
import (
|
|
"testing"
|
|
"time"
|
|
|
|
"github.com/komari-monitor/komari/database/models"
|
|
)
|
|
|
|
func TestParseTemplateFormatsEventTimeInLocalTimezone(t *testing.T) {
|
|
originalLocal := time.Local
|
|
time.Local = time.FixedZone("UTC+8", 8*60*60)
|
|
t.Cleanup(func() { time.Local = originalLocal })
|
|
|
|
eventTime := time.Date(2026, 7, 17, 1, 30, 0, 123456789, time.UTC)
|
|
got := parseTemplate("{{time}}", models.EventMessage{Time: eventTime})
|
|
want := "2026-07-17 09:30:00"
|
|
if got != want {
|
|
t.Fatalf("formatted event time = %q, want %q", got, want)
|
|
}
|
|
}
|
|
|
|
func TestParseTemplateFormatsAnyTypedEventField(t *testing.T) {
|
|
for _, tc := range []struct {
|
|
event any
|
|
want string
|
|
}{
|
|
{event: models.EventMessage{Event: "Offline"}, want: "Offline"},
|
|
{event: models.EventMessage{Event: 42}, want: "42"},
|
|
{event: models.EventMessage{Event: nil}, want: ""},
|
|
} {
|
|
if got := parseTemplate("{{event}}", tc.event); got != tc.want {
|
|
t.Fatalf("parseTemplate with Event=%v = %q, want %q", tc.event, got, tc.want)
|
|
}
|
|
}
|
|
}
|