修复 AuthKey为空的时候 也可以过.

This commit is contained in:
eson
2023-06-25 11:26:47 +08:00
parent 8bd6f019ba
commit efe02a0355
23 changed files with 267 additions and 125 deletions

View File

@@ -0,0 +1,35 @@
package logic
import (
"fmt"
"fusenapi/server/webset/internal/config"
"fusenapi/server/webset/internal/handler"
"fusenapi/server/webset/internal/svc"
"log"
"github.com/zeromicro/go-zero/core/conf"
"github.com/zeromicro/go-zero/rest"
)
var testConfigFile = "../etc/wetset.yaml"
var cnf config.Config
var gserver *rest.Server
func init() {
log.SetFlags(log.Llongfile)
gserver = GetTestServer(testConfigFile)
}
func GetTestServer(testConfigFile string) *rest.Server {
conf.MustLoad(testConfigFile, &cnf)
server := rest.MustNewServer(cnf.RestConf)
defer server.Stop()
ctx := svc.NewServiceContext(cnf)
handler.RegisterHandlers(server, ctx)
fmt.Printf("Starting server at %s:%d...\n", cnf.Host, cnf.Port)
return server
}

View File

@@ -0,0 +1,47 @@
package logic
import (
"fmt"
fstests "fusenapi/utils/tests"
"log"
"testing"
"github.com/474420502/requests"
"github.com/tidwall/gjson"
)
func TestWetSetLogic(t *testing.T) {
var err error
var resp *requests.Response
var result gjson.Result
// 获取 session并携带 JWT token
ses := fstests.GetSesssion()
// 向服务器发送 GET 请求,获取 cookie 信息
resp, err = ses.Get(fmt.Sprintf("http://%s:%d/wet-set/setting", cnf.Host, cnf.Port)).TestExecute(gserver)
if err != nil {
t.Error(err)
}
// 使用 gjson 解析返回的 json 数据
result = resp.Json() // gjson
log.Println(result)
// 检查返回值中的 code 字段是否存在,并且值是否为 200
code := result.Get("code").Int()
if code != 200 {
t.Errorf("Invalid code value: %d", code)
}
// 检查返回值中的 msg 字段是否存在,并且值是否为 "success"
msg := result.Get("msg").String()
if msg != "success" {
t.Errorf(`Invalid msg value: "%s"`, msg)
}
// 检查返回值中的 data 字段是否存在,并且值是否符合预期
token := result.Get("data.token").String()
if len(token) == 0 {
t.Error("Missing token field")
}
}