添加s3
This commit is contained in:
41
server/upload/test/basic.go
Normal file
41
server/upload/test/basic.go
Normal file
@@ -0,0 +1,41 @@
|
||||
package test
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"fusenapi/server/home-user-auth/test"
|
||||
"fusenapi/server/upload/internal/config"
|
||||
"fusenapi/server/upload/internal/handler"
|
||||
"fusenapi/server/upload/internal/svc"
|
||||
"fusenapi/utils/fstests"
|
||||
"log"
|
||||
|
||||
"github.com/zeromicro/go-zero/core/conf"
|
||||
"github.com/zeromicro/go-zero/rest"
|
||||
)
|
||||
|
||||
var env = "test"
|
||||
|
||||
var testConfigFile = "upload.yaml"
|
||||
var cnf config.Config
|
||||
var userServer *rest.Server
|
||||
var gserver *rest.Server
|
||||
|
||||
func init() {
|
||||
log.SetFlags(log.Llongfile)
|
||||
userServer = test.GetTestServer()
|
||||
gserver = GetTestServer()
|
||||
}
|
||||
|
||||
func GetTestServer() *rest.Server {
|
||||
|
||||
conf.MustLoad(fstests.GetEtcYamlPathAuto(fstests.GetCurrentServiceName()+".yaml"), &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
|
||||
}
|
||||
BIN
server/upload/test/fusen.webp
Normal file
BIN
server/upload/test/fusen.webp
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 1.2 KiB |
67
server/upload/test/uploadfilefrontendhandler_test.go
Normal file
67
server/upload/test/uploadfilefrontendhandler_test.go
Normal file
@@ -0,0 +1,67 @@
|
||||
package test
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"fusenapi/server/upload/internal/types"
|
||||
fstests "fusenapi/utils/fstests"
|
||||
"io/ioutil"
|
||||
"log"
|
||||
"testing"
|
||||
|
||||
"github.com/474420502/requests"
|
||||
"github.com/tidwall/gjson"
|
||||
)
|
||||
|
||||
func TestCaseUploadfileFrontend(t *testing.T) {
|
||||
var err error
|
||||
var resp *requests.Response
|
||||
var result gjson.Result
|
||||
|
||||
// 获取 session,并携带 JWT token
|
||||
ses := fstests.GetSessionWithUserToken(t, userServer, cnf.Host, cnf.Port)
|
||||
tp := ses.Post(fmt.Sprintf("http://%s:%d/upload/upload-file-frontend", cnf.Host, cnf.Port))
|
||||
|
||||
data, err := ioutil.ReadFile("./fusen.webp")
|
||||
if err != nil {
|
||||
t.Error(err)
|
||||
return
|
||||
}
|
||||
|
||||
req := types.RequestUploadFile{
|
||||
FileName: "fusen.webp", FileType: "image", FileSize: int64(len(data)),
|
||||
Category: "personalization",
|
||||
}
|
||||
tp.SetBodyJson(req)
|
||||
// 向服务器发送 GET 请求,获取用户基本信息
|
||||
resp, err = tp.TestExecute(gserver)
|
||||
if err != nil {
|
||||
t.Error(err)
|
||||
}
|
||||
|
||||
result = resp.Json()
|
||||
if result.Get("code").Int() != 200 {
|
||||
t.Error("code != 200")
|
||||
}
|
||||
|
||||
if !result.Get("data").Exists() {
|
||||
t.Error("data not exists")
|
||||
}
|
||||
|
||||
if !result.Get("data.upload_url").Exists() {
|
||||
t.Error("upload_url not exists")
|
||||
}
|
||||
|
||||
log.Println(result)
|
||||
uri := result.Get("data.upload_url").String()
|
||||
|
||||
tpUpload := requests.NewSession().Put(uri)
|
||||
|
||||
tpUpload.SetBodyStream(data)
|
||||
|
||||
resp, err = tpUpload.Execute()
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
|
||||
log.Println(resp.Json())
|
||||
}
|
||||
Reference in New Issue
Block a user