refactor: reorganize modules and add Linux build tooling
This commit is contained in:
167
module/base/fts/test/fts_test.go
Normal file
167
module/base/fts/test/fts_test.go
Normal file
@@ -0,0 +1,167 @@
|
||||
//go:build integration
|
||||
|
||||
package test
|
||||
|
||||
import (
|
||||
"bytes"
|
||||
"encoding/json"
|
||||
"fmt"
|
||||
"io"
|
||||
"mime/multipart"
|
||||
"net/http"
|
||||
"os"
|
||||
"testing"
|
||||
)
|
||||
|
||||
type PushData struct {
|
||||
uploaderUrl string
|
||||
fileName string
|
||||
bucket string
|
||||
ossName string
|
||||
purpose string
|
||||
}
|
||||
|
||||
// 华为
|
||||
var ossData = PushData{
|
||||
uploaderUrl: "http://127.0.0.1:12214/fts/Transfer/Uploader",
|
||||
fileName: "hello.txt",
|
||||
bucket: "makw-cdn-file",
|
||||
ossName: "huawei",
|
||||
purpose: "uploader", //文件夹名称(用途)
|
||||
}
|
||||
|
||||
// minio
|
||||
//var ossData = PushData{
|
||||
// uploaderUrl: "http://127.0.0.1:12214/fts/Transfer/Uploader",
|
||||
// fileName: "hello.txt",
|
||||
// bucket: "uploader",
|
||||
// ossName: "minio",
|
||||
// purpose: "uploader",
|
||||
//}
|
||||
|
||||
var token = os.Getenv("BSM_FTS_TOKEN")
|
||||
|
||||
//var token = ""
|
||||
|
||||
func postFile(ossName, filename, bucket, key string) (string, *bytes.Buffer) {
|
||||
body := &bytes.Buffer{}
|
||||
writer := multipart.NewWriter(body)
|
||||
_ = writer.WriteField("provider", ossName)
|
||||
_ = writer.WriteField("bucket", bucket)
|
||||
_ = writer.WriteField("purpose", key)
|
||||
uploadWriter, _ := writer.CreateFormFile("file", filename)
|
||||
fileData, _ := os.Open(filename)
|
||||
defer fileData.Close()
|
||||
io.Copy(uploadWriter, fileData)
|
||||
_ = writer.Close()
|
||||
return writer.FormDataContentType(), body
|
||||
}
|
||||
|
||||
// 测试上传请求
|
||||
func TestUploader(t *testing.T) {
|
||||
// 组装请求内容
|
||||
contextType, body := postFile(ossData.ossName, ossData.fileName, ossData.bucket, ossData.purpose)
|
||||
//fmt.Println(body.String())
|
||||
|
||||
req, err := http.NewRequest("POST", ossData.uploaderUrl, body)
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
req.Header.Set("Content-Type", contextType)
|
||||
req.Header.Set("Authorization", token)
|
||||
// 发起请求
|
||||
client := &http.Client{}
|
||||
resp, err := client.Do(req)
|
||||
//resp, err := http.Post(ossData.uploaderUrl, context, body)
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
|
||||
content, err := io.ReadAll(resp.Body)
|
||||
defer resp.Body.Close()
|
||||
fmt.Printf("%s", content)
|
||||
}
|
||||
|
||||
// allows 获取传输配置信息
|
||||
func TestGetConfig(t *testing.T) {
|
||||
resp, err := http.Get("http://127.0.0.1:12214/fts/Get/Config")
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
content, err := io.ReadAll(resp.Body)
|
||||
defer resp.Body.Close()
|
||||
fmt.Printf("%s", content)
|
||||
}
|
||||
|
||||
// 闪传
|
||||
func TestPrepare(t *testing.T) {
|
||||
var data = map[string]string{
|
||||
"hash": "04d6af2bff8ae74b7ac7d42b56a5ca795f56a4d00f4f4229fdae3561d46b912c",
|
||||
"file_name": "xx.png",
|
||||
}
|
||||
jsonData, _ := json.Marshal(data)
|
||||
var body = bytes.NewBuffer([]byte(jsonData))
|
||||
fmt.Println(body)
|
||||
resp, err := http.Post("http://127.0.0.1:12214/fts/Transfer/Prepare", "application/json", body)
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
content, err := io.ReadAll(resp.Body)
|
||||
fmt.Printf("%s", content)
|
||||
|
||||
}
|
||||
|
||||
// 列表
|
||||
func TestList(t *testing.T) {
|
||||
// 组装请求内容
|
||||
var data = map[string]int{
|
||||
"size": 2,
|
||||
//"page": 33,
|
||||
}
|
||||
jsonData, _ := json.Marshal(data)
|
||||
var body = bytes.NewBuffer(jsonData)
|
||||
fmt.Println(body)
|
||||
req, err := http.NewRequest("POST", "http://127.0.0.1:12214/fts/Transfer/FileList", body)
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
req.Header.Set("Content-Type", "application/json")
|
||||
req.Header.Set("Authorization", token)
|
||||
// 发起请求
|
||||
client := &http.Client{}
|
||||
resp, err := client.Do(req)
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
|
||||
content, err := io.ReadAll(resp.Body)
|
||||
defer resp.Body.Close()
|
||||
fmt.Printf("%s", content)
|
||||
}
|
||||
|
||||
// 详情
|
||||
func TestDetails(t *testing.T) {
|
||||
// 组装请求内容
|
||||
var data = map[string]string{
|
||||
"identity": "5fc04e7f-1b82-4069-9ea7-c29414722e98",
|
||||
//"file_name": "hello.txt",
|
||||
}
|
||||
jsonData, _ := json.Marshal(data)
|
||||
var body = bytes.NewBuffer([]byte(jsonData))
|
||||
req, err := http.NewRequest("POST", "http://127.0.0.1:12214/fts/Transfer/Details", body)
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
req.Header.Set("Content-Type", "application/json")
|
||||
req.Header.Set("Authorization", token)
|
||||
// 发起请求
|
||||
client := &http.Client{}
|
||||
resp, err := client.Do(req)
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
|
||||
content, err := io.ReadAll(resp.Body)
|
||||
defer resp.Body.Close()
|
||||
fmt.Printf("%s", content)
|
||||
}
|
||||
Reference in New Issue
Block a user