chore: establish local platform baseline
This commit is contained in:
@@ -0,0 +1,36 @@
|
||||
package diagnostics
|
||||
|
||||
import (
|
||||
"testing"
|
||||
"time"
|
||||
)
|
||||
|
||||
func TestValidatePilotDailySnapshotInputUsesNaturalDay(t *testing.T) {
|
||||
now := time.Date(2026, 3, 9, 12, 0, 0, 0, time.UTC)
|
||||
_, start, end, err := validatePilotDailySnapshotInput(PilotDailySnapshotInput{
|
||||
CandidateVersion: "0.55.0-rc.test",
|
||||
BuildDigest: "sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
||||
LocalDate: "2026-03-08",
|
||||
Timezone: "America/New_York",
|
||||
Reason: "试点日报归档",
|
||||
}, now)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
if got := end.Sub(start); got != 23*time.Hour {
|
||||
t.Fatalf("DST natural day duration=%s, want 23h", got)
|
||||
}
|
||||
}
|
||||
|
||||
func TestValidatePilotDailySnapshotInputRejectsInvalidTimezoneAndFutureDate(t *testing.T) {
|
||||
now := time.Date(2026, 8, 25, 12, 0, 0, 0, time.UTC)
|
||||
for _, input := range []PilotDailySnapshotInput{
|
||||
{LocalDate: "2026-08-25", Timezone: "Asia/Shanghai", Reason: "试点日报归档"},
|
||||
{CandidateVersion: "0.55.0-rc.test", BuildDigest: "sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", LocalDate: "2026-08-25", Timezone: "Mars/Base", Reason: "试点日报归档"},
|
||||
{CandidateVersion: "0.55.0-rc.test", BuildDigest: "sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", LocalDate: "2026-08-26", Timezone: "Asia/Shanghai", Reason: "试点日报归档"},
|
||||
} {
|
||||
if _, _, _, err := validatePilotDailySnapshotInput(input, now); err == nil {
|
||||
t.Fatalf("expected invalid input: %+v", input)
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user