feat: 支持 MySQL 公网 TLS CA 校验 (#86)
This commit is contained in:
@@ -0,0 +1,42 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"net/http"
|
||||
"net/http/httptest"
|
||||
"os"
|
||||
"testing"
|
||||
|
||||
"cmautobuy/admin/config"
|
||||
"cmautobuy/admin/repository"
|
||||
)
|
||||
|
||||
// TestAdmin_公网MySQLTLS页面冒烟走和 main 相同的数据库及路由组装路径。
|
||||
// 只有显式开启时才连接线上 autobuy;测试只追加 schema migration,不清理业务表。
|
||||
func TestAdmin_公网MySQLTLS页面冒烟(t *testing.T) {
|
||||
if os.Getenv("CMAUTOBUY_MYSQL_PUBLIC_TLS_TEST") != "1" {
|
||||
t.Skip("未启用公网 MySQL TLS 页面冒烟")
|
||||
}
|
||||
cfg, err := config.LoadDatabaseFromEnv()
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
db, err := repository.OpenMySQL(cfg)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
defer db.Close()
|
||||
if err := repository.MigrateMySQL(db); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
router, err := newRouter(db)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
request := httptest.NewRequest(http.MethodGet, "/", nil)
|
||||
response := httptest.NewRecorder()
|
||||
router.ServeHTTP(response, request)
|
||||
if response.Code < 200 || response.Code >= 400 {
|
||||
t.Fatalf("首页状态码=%d,期望成功或重定向", response.Code)
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user