我正在测试一个使用 gomega 向服务器发送模拟请求的函数,我想验证 1. 请求已经开始 2. 请求已经完成。为此,我返回两个布尔值。在下面的示例中,它们都应评估为 true,但值可能会发生变化。我试过这个:
g := gomega.NewGomegaWithT(t)
...
g.Eventually(func() (bool, bool) {
...
start = false
end = true
if (request.status == "started") {
start = true
}
if (request.status == "complete") {
end = true
}
return start, end
}).Should(Equal((true, true))
但似乎 gomega'sEqual()
不处理多个变量。有没有办法解决?评估两个返回值是不好的做法吗?