This commit is contained in:
toom1996
2026-09-21 19:19:03 +08:00
parent dffcf9f9e5
commit 299fd974df
11 changed files with 3392 additions and 575 deletions

View File

@ -23,7 +23,14 @@ import (
"gorm.io/gorm"
)
// testDB 连真实库并完成 AutoMigrate + 去重 schema 初始化。
// testDB 连真实库并校验去重所需的结构已就绪。
//
// 结构不再由 AutoMigrate 自动创建(已移除),须先自行准备好库,例如:
//
// ./bin/dbtool dump -out db_dump.sql
// psql -U fashion -d fashion -v ON_ERROR_STOP=1 -f db_dump.sql
//
// 这里只做存在性校验并给出明确提示,避免后续查询报出难懂的错。
func testDB(t *testing.T) *gorm.DB {
t.Helper()
cfg, err := config.Load("")
@ -34,13 +41,11 @@ func testDB(t *testing.T) *gorm.DB {
if err != nil {
t.Fatalf("连接数据库失败: %v", err)
}
if err := database.AutoMigrate(db); err != nil {
t.Fatalf("AutoMigrate 失败: %v", err)
}
if err := database.EnsureDedupSchema(db); err != nil {
t.Fatalf("去重 schema 失败: %v", err)
}
t.Cleanup(func() { _ = database.Close(db) })
if err := db.Exec("SELECT 1 FROM brand_runway_images LIMIT 1").Error; err != nil {
t.Fatalf("brand_runway_images 不可用(库结构未就绪?先 dbtool dump 再 psql -f 灌库): %v", err)
}
return db
}