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

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()
}