package core import ( "os" "testing" "time" ) // 把测试进程的时区钉成 **UTC**。 // // 为什么必需:Qoder 的每日活动按 **UTC+8** 结算,判定必须用算术平移而不是 // 本机时区。但这台机器**本身就是 HKT(+0800)** —— 于是在真实环境里 // 「os.date("!*t")(UTC 平移)」与「os.date("*t")(本机时区)」结果**完全相同**, // 判据无法区分二者(实测:把实现改成用本机时区,判据照样通过)。 // 钉成 UTC 后两者相差 8 小时,误用本机时区的实现立刻暴露。 // // 只影响测试进程,不改系统时区。 func TestMain(m *testing.M) { os.Setenv("TZ", "UTC") time.Local = time.UTC os.Exit(m.Run()) }