120 lines
3.0 KiB
Go
120 lines
3.0 KiB
Go
package cache_test
|
|
|
|
import (
|
|
"fmt"
|
|
"go_dreamfactory/comm"
|
|
"go_dreamfactory/lego/sys/log"
|
|
"go_dreamfactory/pb"
|
|
"go_dreamfactory/sys/cache"
|
|
"go_dreamfactory/sys/db"
|
|
"os"
|
|
"testing"
|
|
"time"
|
|
|
|
"go_dreamfactory/utils"
|
|
|
|
"go.mongodb.org/mongo-driver/bson"
|
|
"go.mongodb.org/mongo-driver/bson/primitive"
|
|
)
|
|
|
|
//测试环境下初始化db和cache 系统
|
|
func TestMain(m *testing.M) {
|
|
if err := db.OnInit(nil, db.Set_MongodbUrl("mongodb://admin:123456@10.0.0.9:27018"), db.Set_MongodbDatabase("dreamfactory")); err != nil {
|
|
fmt.Printf("err:%v\n", err)
|
|
return
|
|
}
|
|
if err := cache.OnInit(nil, cache.Set_Redis_Addr([]string{"10.0.0.9:9001", "10.0.0.9:9002", "10.0.0.9:9003", "10.0.1.45:9004", "10.0.1.45:9005", "10.0.1.45:9006"}), cache.Set_Redis_Password("")); err != nil {
|
|
fmt.Printf("err:%v\n", err)
|
|
return
|
|
}
|
|
for i := 0; i < 50000; i++ {
|
|
//go func() {
|
|
_mail := &pb.DB_MailData{
|
|
ObjId: primitive.NewObjectID().Hex(),
|
|
UserId: "uid123",
|
|
Title: "系统邮件",
|
|
|
|
Contex: "恭喜获得专属礼包一份",
|
|
CreateTime: uint64(time.Now().Unix()),
|
|
DueTime: uint64(time.Now().Unix()) + 30*24*3600,
|
|
Check: false,
|
|
Reward: false,
|
|
}
|
|
//db.InsertModelLogs("mail", "uid123", _mail)
|
|
db.Defsys.Mgo().InsertOne("mail", _mail)
|
|
data := &comm.Autogenerated{
|
|
ID: primitive.NewObjectID().Hex(),
|
|
UID: "uid123",
|
|
Act: string(comm.LogHandleType_Insert),
|
|
}
|
|
data.D = append(data.D, "mail") // D[0]
|
|
data.D = append(data.D, _mail) // D[1]
|
|
|
|
_, err1 := db.Defsys.Mgo().InsertOne("model_log", data)
|
|
if err1 != nil {
|
|
log.Errorf("insert model db err %v", err1)
|
|
}
|
|
//}()
|
|
|
|
///////////////////////////////////////
|
|
filter := bson.M{
|
|
"userid": "uid123",
|
|
"title": "系统邮件",
|
|
}
|
|
var nd *pb.DB_MailData
|
|
err := db.Defsys.Mgo().FindOne("mail", filter).Decode(&nd)
|
|
if err == nil {
|
|
nd.Check = true
|
|
nd.Reward = true
|
|
|
|
data1 := &comm.Autogenerated{
|
|
ID: primitive.NewObjectID().Hex(),
|
|
UID: "uid123",
|
|
Act: string(comm.LogHandleType_Update),
|
|
}
|
|
filter1 := bson.M{
|
|
"userid": "uid123",
|
|
"title": "系统邮件",
|
|
}
|
|
var ndmodify = &bson.M{
|
|
"title": "xxxxx",
|
|
"check": true,
|
|
}
|
|
|
|
data1.D = make([]interface{}, 0)
|
|
data1.D = append(data1.D, "mail") // D[0]
|
|
data1.D = append(data1.D, &filter1) // D[1]
|
|
data1.D = append(data1.D, ndmodify) // D[2]
|
|
nd.Title = "read"
|
|
//db.Defsys.Mgo().UpdateMany("mail", filter1, bson.M{"$set": nd})
|
|
_, err = db.Defsys.Mgo().InsertOne("model_log", data1)
|
|
if err != nil {
|
|
log.Errorf("insert model db err %v", err)
|
|
}
|
|
|
|
}
|
|
}
|
|
time.Sleep(time.Second * 10)
|
|
|
|
defer os.Exit(m.Run())
|
|
|
|
}
|
|
|
|
func TestSet(t *testing.T) {
|
|
friendDb := &pb.DB_FriendData{
|
|
UserId: "111",
|
|
FriendIds: []string{"222"},
|
|
ApplyIds: []string{"333"},
|
|
BlackIds: []string{"444"},
|
|
}
|
|
data := utils.Pb2Map(friendDb)
|
|
// data2 := map[string]interface{}{
|
|
// "userId": friendDb.UserId,
|
|
// "friendIds": friendDb.FriendIds,
|
|
// "applyIds": friendDb.ApplyIds,
|
|
// "blackIds": friendDb.BlackIds,
|
|
// }
|
|
|
|
cache.Redis().HMSet("friend:222", data)
|
|
}
|