You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
101 lines
2.5 KiB
Go
101 lines
2.5 KiB
Go
package test
|
|
|
|
import (
|
|
"context"
|
|
"joybuywork/internal/config"
|
|
"joybuywork/internal/consts"
|
|
"joybuywork/internal/server"
|
|
"joybuywork/internal/server/depend"
|
|
"errors"
|
|
"fmt"
|
|
"github.com/valyala/fasthttp"
|
|
"gits.branchcn.com/backend/microcode/micro"
|
|
"go-micro.dev/v4/client"
|
|
"io"
|
|
"net/http"
|
|
"os"
|
|
"sync"
|
|
"testing"
|
|
"time"
|
|
)
|
|
|
|
func rpc() {
|
|
os.Args = []string{}
|
|
|
|
depend.M = micro.Grpc(micro.GrpcConfig{
|
|
ServerName: "test",
|
|
EtcdAddress: config.Config.Etcd.Address,
|
|
CallWrapper: []client.CallWrapper{
|
|
server.CallWrapper(),
|
|
},
|
|
})
|
|
}
|
|
|
|
func TestSignIn(t *testing.T) {
|
|
rpc()
|
|
|
|
ctx := context.Background()
|
|
|
|
//ser := w_campaign_userpb.NewWCampaignUserService(consts.ServiceName, depend.M.Client())
|
|
|
|
timer := time.NewTicker(time.Second)
|
|
defer timer.Stop()
|
|
wg := sync.WaitGroup{}
|
|
|
|
for {
|
|
select {
|
|
//case <-timer.C:
|
|
// for i := 0; i < 100; i++ {
|
|
// wg.Add(1)
|
|
// go func() {
|
|
// defer wg.Done()
|
|
// res, err := ser.SignIn(ctx, &w_campaign_userpb.SignInReq{
|
|
// UserId: 238719644948271104,
|
|
// NowMouth: "2025-4",
|
|
// PageType: 0,
|
|
// CampaignId: 4295,
|
|
// })
|
|
//
|
|
// t.Logf("%v, %v", err, res)
|
|
// }()
|
|
// }
|
|
|
|
case <-timer.C:
|
|
for i := 0; i < 100; i++ {
|
|
wg.Add(1)
|
|
go func() {
|
|
defer wg.Done()
|
|
cli := &http.Client{}
|
|
|
|
// 创建请求
|
|
req, err := http.NewRequest("GET", "http://127.0.0.1:13100/deep-view/fission-user/sign-in?now_mouth=&page_type=0", nil)
|
|
if err != nil {
|
|
err = errors.New(fmt.Sprintf("创建请求失败: %v", err))
|
|
return
|
|
}
|
|
|
|
req.Header.Set(fasthttp.HeaderContentType, "application/json")
|
|
req.Header.Set("X-Message-Id", fmt.Sprint(ctx.Value(consts.TraceIdKey)))
|
|
req.Header.Set(fasthttp.HeaderAuthorization, "Bearer eyJhbGciOiJIUzI1NiIsInNhbHQiOiJ5eXRCdXoiLCJzaWduIjoiNzFmYTIxYjBjMGZmYzAwOWRhYjNmOTcxMzdmMTVjZWMiLCJ0eXAiOiJKV1QiLCJ2ZXIiOiJ2MSJ9.eyJiaWQiOiIyMzg3MTk2NDQ5NDgyNzExMDQiLCJjYW1wYWlnbl9pZCI6NDI5NSwiY2hhbm5lbF9pZCI6ODIyOCwicGlkIjoyMzg3MTk2NDQ5NDgyNzExMDQsImxhbmciOiJ6aCIsInNob3dfbGFuZyI6InpoIiwidHoiOiJHTVQiLCJ0el9vZmZzZXQiOjgsImlzcyI6ImNlcnRpZmllZCIsImV4cCI6MTc0NDE3Mzk1OCwibmJmIjoxNzQ0MTY2NzU4LCJpYXQiOjE3NDQxNjY3NTgsImp0aSI6ImN2cXR1cG1yZGo3b2VtM3JxbGxnIn0.dC6bDlOfXmNpHdRQmPU68c4GOgFf9vIYI1d0kjQ5JMA")
|
|
|
|
// 发送请求
|
|
resp, err := cli.Do(req)
|
|
if err != nil {
|
|
err = errors.New(fmt.Sprintf("请求失败: %v", err))
|
|
return
|
|
}
|
|
defer resp.Body.Close()
|
|
|
|
// 可以通过 resp.Body 获取响应内容
|
|
data, _ := io.ReadAll(resp.Body)
|
|
|
|
t.Logf("%v, %s", err, string(data))
|
|
|
|
}()
|
|
}
|
|
}
|
|
}
|
|
|
|
wg.Wait()
|
|
}
|