83 lines
1.9 KiB
Go
83 lines
1.9 KiB
Go
package mdbc
|
|
|
|
import (
|
|
"context"
|
|
"fmt"
|
|
"testing"
|
|
|
|
"github.com/sirupsen/logrus"
|
|
"go.mongodb.org/mongo-driver/bson"
|
|
)
|
|
|
|
func TestUpdateScope_One(t *testing.T) {
|
|
cfg := &Config{
|
|
URI: "mongodb://admin:admin@10.0.0.135:27017/admin",
|
|
MinPoolSize: 32,
|
|
ConnTimeout: 10,
|
|
}
|
|
cfg.RegistryBuilder = RegisterTimestampCodec(nil)
|
|
client, err := ConnInit(cfg)
|
|
|
|
if err != nil {
|
|
logrus.Fatalf("get err: %+v", err)
|
|
}
|
|
Init(client).InitDB(client.Database("mdbc"))
|
|
|
|
var m = NewModel(&ModelSchedTask{})
|
|
|
|
var record = ModelSchedTask{Id: "0e434c7d5c9eb8b129ce42ce07afef09"}
|
|
if err := m.SetDebug(true).FindOne().SetFilter(bson.M{"_id": record.Id}).Get(&record); err != nil {
|
|
logrus.Errorf("get err: %+v", err)
|
|
}
|
|
|
|
fmt.Printf("record %+v\n", record)
|
|
var ctx = context.Background()
|
|
|
|
record.TaskState = uint32(TaskState_TaskStateCompleted)
|
|
|
|
updateData := bson.M{
|
|
"task_state": uint32(TaskState_TaskStateFailed),
|
|
}
|
|
_, err = m.SetDebug(true).Update().SetContext(ctx).SetFilter(bson.M{"_id": record.Id}).One(updateData)
|
|
if err != nil {
|
|
logrus.Errorf("get err: %+v", err)
|
|
}
|
|
|
|
updateData = bson.M{
|
|
"task_state": uint32(TaskState_TaskStateFailed),
|
|
}
|
|
_, err = m.SetDebug(true).Update().SetFilter(bson.M{"_id": record.Id}).One(updateData)
|
|
if err != nil {
|
|
logrus.Errorf("get err: %+v", err)
|
|
}
|
|
}
|
|
|
|
func TestUpdateScope_Many(t *testing.T) {
|
|
cfg := &Config{
|
|
URI: "mongodb://mdbc:mdbc@10.0.0.135:27117/admin",
|
|
MinPoolSize: 32,
|
|
ConnTimeout: 10,
|
|
}
|
|
cfg.RegistryBuilder = RegisterTimestampCodec(nil)
|
|
client, err := ConnInit(cfg)
|
|
|
|
if err != nil {
|
|
logrus.Fatalf("get err: %+v", err)
|
|
}
|
|
Init(client).InitDB(client.Database("mdbc"))
|
|
|
|
var m = NewModel(&ModelSchedTask{})
|
|
|
|
//updateData := bson.M{
|
|
// "$inc": bson.M{
|
|
// "set_group_name": 1,
|
|
// },
|
|
//}
|
|
res, err := m.SetDebug(true).Update().SetFilter(bson.M{"task_type": "set_group_name"}).MustMapMany(m)
|
|
if err != nil {
|
|
logrus.Errorf("get err: %+v", err)
|
|
panic(err)
|
|
}
|
|
logrus.Infof("%+v", res)
|
|
}
|