34 lines
925 B
Go
34 lines
925 B
Go
package inspur
|
|
|
|
import (
|
|
"testing"
|
|
"time"
|
|
)
|
|
|
|
func TestParseSELListWithLocation_UsesProvidedTimezone(t *testing.T) {
|
|
content := []byte("sel elist:\n1,02/28/2026,04:18:18,Sensor X,Event,Asserted\n")
|
|
shanghai, err := time.LoadLocation("Asia/Shanghai")
|
|
if err != nil {
|
|
t.Fatalf("load location: %v", err)
|
|
}
|
|
|
|
events := ParseSELListWithLocation(content, shanghai)
|
|
if len(events) != 1 {
|
|
t.Fatalf("expected 1 event, got %d", len(events))
|
|
}
|
|
|
|
// 04:18:18 +08:00 == 20:18:18Z (previous day)
|
|
want := time.Date(2026, 2, 27, 20, 18, 18, 0, time.UTC)
|
|
if !events[0].Timestamp.UTC().Equal(want) {
|
|
t.Fatalf("unexpected timestamp: got %s want %s", events[0].Timestamp.UTC(), want)
|
|
}
|
|
}
|
|
|
|
func TestParseTimezoneConfigLocation(t *testing.T) {
|
|
content := []byte("[TimeZoneConfig]\ntimezone=Asia/Shanghai\n")
|
|
got := parseTimezoneConfigLocation(content)
|
|
if got != "Asia/Shanghai" {
|
|
t.Fatalf("unexpected timezone: %q", got)
|
|
}
|
|
}
|