feat: 交付官方 Docker 运行时,外观改背景图并下线自定义 CSS/JS
站点/后台分轨背景与用户列表排序一并落地;生产 CORS 改走 SITE_URL,健康检查带版本号。 Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -88,3 +88,54 @@ func TestRejectStrayDataDir(t *testing.T) {
|
||||
t.Fatal(err)
|
||||
}
|
||||
}
|
||||
|
||||
func TestAllowOriginDevAndProd(t *testing.T) {
|
||||
dev := &Config{DevMode: true}
|
||||
if !dev.AllowOrigin("http://localhost:3000") || !dev.AllowOrigin("http://127.0.0.1:3000") {
|
||||
t.Fatal("开发态应放行 next dev Origin")
|
||||
}
|
||||
if dev.AllowOrigin("https://bbs.example.com") {
|
||||
t.Fatal("开发态不应放行生产域名")
|
||||
}
|
||||
|
||||
prod := &Config{
|
||||
DevMode: false,
|
||||
SiteURL: "https://bbs.example.com",
|
||||
CORSOrigins: []string{"https://mirror.example.com"},
|
||||
}
|
||||
if !prod.AllowOrigin("https://bbs.example.com/") {
|
||||
t.Fatal("生产态应放行 SITE_URL")
|
||||
}
|
||||
if !prod.AllowOrigin("https://mirror.example.com") {
|
||||
t.Fatal("生产态应放行 CORS_ORIGINS")
|
||||
}
|
||||
if prod.AllowOrigin("http://localhost:3000") {
|
||||
t.Fatal("生产态不应放行 localhost")
|
||||
}
|
||||
}
|
||||
|
||||
func TestParseSiteURLAndDataDir(t *testing.T) {
|
||||
work := t.TempDir()
|
||||
data := t.TempDir()
|
||||
t.Setenv("JIANG13_WORK_PATH", work)
|
||||
t.Setenv("DEV_MODE", "false")
|
||||
t.Setenv("SITE_URL", "https://bbs.example.com/")
|
||||
t.Setenv("CORS_ORIGINS", " https://a.example.com ,https://b.example.com/ ")
|
||||
t.Setenv("DATA_DIR", data)
|
||||
t.Setenv("JWT_SECRET", "test-secret-not-for-prod")
|
||||
|
||||
cfg, err := Parse()
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
if cfg.DevMode {
|
||||
t.Fatal("DEV_MODE=false 应关闭开发态")
|
||||
}
|
||||
if cfg.SiteURL != "https://bbs.example.com" {
|
||||
t.Fatalf("SITE_URL 未去尾斜杠: %q", cfg.SiteURL)
|
||||
}
|
||||
if len(cfg.CORSOrigins) != 2 || cfg.CORSOrigins[0] != "https://a.example.com" || cfg.CORSOrigins[1] != "https://b.example.com" {
|
||||
t.Fatalf("CORS_ORIGINS 解析错误: %#v", cfg.CORSOrigins)
|
||||
}
|
||||
assertPath(t, cfg.DataDir, data)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user