feat 单元测试

This commit is contained in:
2026-01-05 00:32:23 +08:00
parent 887cb242e3
commit 8289e2b4d9
9 changed files with 283 additions and 63 deletions

View File

@@ -0,0 +1,52 @@
package testutil
import (
config2 "common/config"
"common/db/redis"
"gateway/config"
"github.com/alicebob/miniredis/v2"
"github.com/stretchr/testify/suite"
)
type TestSuite struct {
suite.Suite
redis *miniredis.Miniredis
}
// SetupSuite 在整个测试套件开始前运行一次
func (ts *TestSuite) SetupSuite() {
// Redis
r, err := miniredis.Run()
ts.Require().NoError(err)
ts.redis = r
// Config
config.Set(&config.Config{
DB: &config2.DBConfig{
Redis: &config2.RedisConfig{
Addr: r.Addr(),
},
},
Auth: &config.AuthConfig{
Secret: "test",
Expire: 259200,
},
})
ts.Require().NoError(redis.Init(config.Get().DB.Redis))
}
// TearDownSuite 在整个测试套件结束后运行一次
func (ts *TestSuite) TearDownSuite() {
if ts.redis != nil {
ts.redis.Close()
}
}
// SetupTest 在每个测试用例前运行
func (ts *TestSuite) SetupTest() {
}
// TearDownTest 在每个测试用例后运行
func (ts *TestSuite) TearDownTest() {
}