unit-testing - Gomega 是否可以支持验证不同类型的多个返回值,其中最后一个不是 `error` ?

标签 unit-testing go ginkgo gomega

例如: 如果我有 https://pkg.go.dev/sync#Map.Load 的包装: 具有相同的方法签名:

func Load(key string) (value interface{}, ok bool)

Can Gomega's Equal() handle multiple values ?有人提出了类似的问题,答案是将返回值放入单个数据结构中。如果是这样,如果我不想根据单元测试框架的限制来调整(生产)代码怎么办?

最佳答案

可以分几行完成。

        value, ok := m.Load(key)
        Expect(value).NotTo(BeNil())
        Expect(ok).To(BeTrue())

关于unit-testing - Gomega 是否可以支持验证不同类型的多个返回值,其中最后一个不是 `error` ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74332281/

相关文章:

go - Golang 中的管道字符

go - 在 sarama-cluster 中模拟 NewConsumer

c++ - 如何在 C++ 中将值与模板和 boost 进行比较?

javascript - 当使用功能性方法时,纽约的报道对我不起作用。 lambda

go - 新行分隔的输入流已写入文件

go - 为什么不是 uint32 而不是 int64?

go - 没有发现银杏测试?

go - 银杏清理失败

ruby - RSpec:如何在期望语法中使用数组包含匹配器

c++ - Boost单元测试链接错误