我刚学了go语言,然后用https://github.com/mongodb/mongo-go-driver使用 MongoDB 和 Golang 制作 rest API,然后我正在做一个单元测试,但是在模拟 Cursor MongoDB 时我被卡住了,因为 Cursor 是一个结构,是一个想法还是有人做到了?
最佳答案
在我看来,模拟这种对象的最佳方法是定义一个接口(interface),因为在 go 接口(interface)中是隐式实现的,您的代码可能不需要那么多更改。一旦你有了一个接口(interface),你就可以使用一些第三方库来自动生成模拟,比如 mockery
关于如何创建接口(interface)的示例
type Cursor interface{
Next(ctx Context)
Close(ctx Context)
}
只需更改任何接收 mongodb 游标的函数即可使用自定义界面
关于mongodb - 如何使用 mongo-go-driver 模拟光标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58143555/