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.

119 lines
2.1 KiB
Go

package campaignnotice
import (
"context"
"joybuywork/internal/app"
"joybuywork/internal/consts"
"joybuywork/internal/repository/mtype"
"joybuywork/internal/service/queue/producer"
"joybuywork/internal/service/queue/types"
"github.com/rs/xid"
"gits.branchcn.com/backend/microcode/plugins/kafka"
"testing"
"time"
_ "joybuywork/test"
)
func TestCampaignNotice(t *testing.T) {
kafkaConfig := kafka.PluginConfig{
Brokers: []string{
"120.79.90.126:9093",
},
}
var err error
app.Kafka, err = kafka.NewPlugin(kafkaConfig)
if err != nil {
t.Log(err)
return
}
producer.SetUp()
ctx := context.WithValue(context.Background(), consts.TraceIdKey, xid.New().String())
p := producer.NewCampaignNotice(ctx)
var userMap = map[string]struct{}{}
for i := 0; i < 20; i++ {
userMap[xid.New().String()] = struct{}{}
}
for i := 0; i < 50; i++ {
var d string
for k, _ := range userMap {
d = k
break
}
var data = types.CampaignNotice{
CampaignId: 1290,
DeviceId: d,
UserId: "",
ParentId: "111",
IsInstall: true,
BehaviorTime: time.Now().Unix(),
}
if i%2 == 0 {
data.UserId = d
data.IsInstall = false
}
p.CampaignNotice(data)
}
time.Sleep(2 * time.Second)
}
func TestCampaignStat(t *testing.T) {
kafkaConfig := kafka.PluginConfig{
Brokers: []string{
"120.79.90.126:9093",
},
}
var err error
app.Kafka, err = kafka.NewPlugin(kafkaConfig)
if err != nil {
t.Log(err)
return
}
producer.SetUp()
ctx := context.WithValue(context.Background(), consts.TraceIdKey, xid.New().String())
p := producer.NewCampaignNotice(ctx)
var userMap = map[string]struct{}{}
for i := 0; i < 20; i++ {
userMap[xid.New().String()] = struct{}{}
}
var tms = map[string]struct{}{
mtype.FissionStatOtherNoChanceClickBtn: {},
}
for i := 0; i < 200; i++ {
var mk string
for k := range tms {
mk = k
break
}
var userHid string
for k := range userMap {
userHid = k
}
p.CampaignOtherStat(types.CampaignOtherStat{
CampaignId: 367,
UserHashId: userHid,
Mark: mk,
})
}
time.Sleep(2 * time.Second)
}