59 lines
1.4 KiB
Go
59 lines
1.4 KiB
Go
|
package logic_test
|
||
|
|
||
|
import (
|
||
|
"flag"
|
||
|
"fmt"
|
||
|
"fusenapi/server/home-user-auth/internal/config"
|
||
|
"fusenapi/server/home-user-auth/internal/handler"
|
||
|
"fusenapi/server/home-user-auth/internal/svc"
|
||
|
"testing"
|
||
|
|
||
|
"github.com/474420502/requests"
|
||
|
"github.com/zeromicro/go-zero/core/conf"
|
||
|
"github.com/zeromicro/go-zero/rest"
|
||
|
)
|
||
|
|
||
|
var testConfigFile = flag.String("f", "../etc/home-user-auth.yaml", "the config file")
|
||
|
var cnf config.Config
|
||
|
var gserver *rest.Server
|
||
|
|
||
|
func init() {
|
||
|
gserver = GetTestServer()
|
||
|
}
|
||
|
|
||
|
func GetTestServer() *rest.Server {
|
||
|
flag.Parse()
|
||
|
|
||
|
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
|
||
|
}
|
||
|
|
||
|
func GetSesssionWithJwtToken(t *testing.T, server requests.ITestServer) *requests.Session {
|
||
|
ses := requests.NewSession()
|
||
|
tp := ses.Post(fmt.Sprintf("http://%s:%d/user/login", cnf.Host, cnf.Port))
|
||
|
tp.SetBodyJson(map[string]interface{}{
|
||
|
"name": "devenv@sina.cn",
|
||
|
"pwd": "$2y$13$6UFDMZQMEfqFYiNLpiUCi.B3fpvGEamPAjIgzUqv/u7jT05nB3pOC",
|
||
|
})
|
||
|
resp, err := tp.TestInServer(server)
|
||
|
if err != nil {
|
||
|
t.Error(err)
|
||
|
}
|
||
|
result := resp.Json()
|
||
|
token := result.Get("data.token")
|
||
|
if !token.Exists() {
|
||
|
t.Error("data.token is not exists")
|
||
|
}
|
||
|
ses.Header.Add("Authorization", token.String())
|
||
|
|
||
|
return ses
|
||
|
}
|