草庐IT

mongo-test

全部标签

mongodb - Golang Mongo 使用 bson.NewObjectID() 插入自生成的 _Id,导致意外的模式

您好,根据我的用例,我正在使用mongo和golang我想在插入之前生成一个_id,因为我正在使用bson.NewobjectId()我的结构有点像这样typeDevicestruct{Idbson.ObjectId`bson:"_id"json:"_id,omitempty"`UserIdstring`bson:"userId"json:"userId"`CategorySlugstring`bson:"categorySlug"json:"categorySlug"`CreatedAttime.Time`bson:"createdAt"json:"createdAt"`Modifi

mongodb - Golang Mongo 使用 bson.NewObjectID() 插入自生成的 _Id,导致意外的模式

您好,根据我的用例,我正在使用mongo和golang我想在插入之前生成一个_id,因为我正在使用bson.NewobjectId()我的结构有点像这样typeDevicestruct{Idbson.ObjectId`bson:"_id"json:"_id,omitempty"`UserIdstring`bson:"userId"json:"userId"`CategorySlugstring`bson:"categorySlug"json:"categorySlug"`CreatedAttime.Time`bson:"createdAt"json:"createdAt"`Modifi

unit-testing - 如何使用 Go 日志包 glog 测试代码?

我已经实现了一个类型包装glog,这样我就可以在日志消息中添加一个前缀来标识我程序中日志的发射器,并且我可以更改每个发射器的日志级别。我如何实现单元测试?问题是glog将文本输出到stdErr。代码很简单,但我希望像其余代码一样进行单元测试和100%的覆盖率。这种编程工作已经付出了代价。 最佳答案 捕获标准错误的测试:packagemainimport("bytes""io""os""testing""github.com/golang/glog""strings")funccaptureStderr(ffunc())(string

unit-testing - 如何使用 Go 日志包 glog 测试代码?

我已经实现了一个类型包装glog,这样我就可以在日志消息中添加一个前缀来标识我程序中日志的发射器,并且我可以更改每个发射器的日志级别。我如何实现单元测试?问题是glog将文本输出到stdErr。代码很简单,但我希望像其余代码一样进行单元测试和100%的覆盖率。这种编程工作已经付出了代价。 最佳答案 捕获标准错误的测试:packagemainimport("bytes""io""os""testing""github.com/golang/glog""strings")funccaptureStderr(ffunc())(string

unit-testing - 如何在 Go lang 中模拟 exec.Command 进行多个单元测试?

我刚刚学习了使用exec.Command()的单元测试函数,即模拟exec.Command()。我继续添加更多单元案例,但遇到了无法针对不同场景模拟输出的问题。这是一个示例代码hello.go我正在尝试测试...packagemainimport("fmt""os/exec")varexecCommand=exec.CommandfuncprintDate()([]byte,error){cmd:=execCommand("date")out,err:=cmd.CombinedOutput()returnout,err}funcmain(){fmt.Printf("hello,worl

unit-testing - 如何在 Go lang 中模拟 exec.Command 进行多个单元测试?

我刚刚学习了使用exec.Command()的单元测试函数,即模拟exec.Command()。我继续添加更多单元案例,但遇到了无法针对不同场景模拟输出的问题。这是一个示例代码hello.go我正在尝试测试...packagemainimport("fmt""os/exec")varexecCommand=exec.CommandfuncprintDate()([]byte,error){cmd:=execCommand("date")out,err:=cmd.CombinedOutput()returnout,err}funcmain(){fmt.Printf("hello,worl

mongodb - 将 Mongo 查询转换为 Mgo 查询

我正在尝试从mongo文档中检索所有id和field2,如果field1等于某个值并且field2存在的话。例子:蒙戈文档:{"id":"id1""field1":"val1""field2":"val2""field3":"val3"}{"id":"id2""field1":"val4""field3":"val5"}结果{"id":"id1""field2":"val2"}我找到了可行的mongodb查询:dbname.find({$and:[{"field1":"val1"},{"field2":{$exists:true}}]},{"id":1,"field2":1})但我想使

mongodb - 将 Mongo 查询转换为 Mgo 查询

我正在尝试从mongo文档中检索所有id和field2,如果field1等于某个值并且field2存在的话。例子:蒙戈文档:{"id":"id1""field1":"val1""field2":"val2""field3":"val3"}{"id":"id2""field1":"val4""field3":"val5"}结果{"id":"id1""field2":"val2"}我找到了可行的mongodb查询:dbname.find({$and:[{"field1":"val1"},{"field2":{$exists:true}}]},{"id":1,"field2":1})但我想使

unit-testing - 模拟接口(interface)函数没有被调用

我正在尝试使用testify模拟库编写Go单元测试。我正在关注这个博客http://goinbigdata.com/testing-go-code-with-testify/.我已将模拟接口(interface)传递给newCalculator函数,但仍然调用Random接口(interface)的Random1而不是structrandomMock的Random1函数。计算器.gopackagecalculatortypeRandominterface{Random1(limitint)int}funcnewCalculator(rndRandom)Random{returncalc

unit-testing - 模拟接口(interface)函数没有被调用

我正在尝试使用testify模拟库编写Go单元测试。我正在关注这个博客http://goinbigdata.com/testing-go-code-with-testify/.我已将模拟接口(interface)传递给newCalculator函数,但仍然调用Random接口(interface)的Random1而不是structrandomMock的Random1函数。计算器.gopackagecalculatortypeRandominterface{Random1(limitint)int}funcnewCalculator(rndRandom)Random{returncalc