我很困惑。我有以下rspec测试:
example "With ENV Slug" do
#Sets a variable to be read by api.releases
ENV.stub(:[]).with("REPO_SLUG").and_return('foo/bar')
provider.api.should_receive(:releases).with('foo/bar').twice
provider.releases
end
它失败了:
expected: ("foo/bar")
got: (nil)
我感到很好奇,所以我尝试了这个:
example "With ENV Slug" do
#Sets a variable to be read by api.releases
ENV.stub(:[]).with("REPO_SLUG").and_return('foo/bar')
provider.api.should_receive(:releases).with(no_args).twice
provider.releases
end
现在我收到了错误:
expected: (no args)
got: ("foo/bar")
世界上有什么?有什么我做错了吗?谢谢你的建议。
答案 0 :(得分:0)
事实证明,该函数被调用了两次,一次是“foo / bar”,另一次是“nil”,所以解决问题的两次尝试都失败了同一个函数但是调用次数不同。