如何仅在黄瓜测试中存根特定ID?

时间:2015-08-04 17:22:39

标签: ruby rspec cucumber

Ruby和黄瓜很新,而且我有一个接受ID的控制器。基本上是一个rest API,所以客户端会调用/ cows / 1234和/ cows / 777。然后,它将路由到getFluffyCow并传递:id = 1234或777。

我最初的尝试如下:

allow(getFluffyCow).to receive(:call).with(1234).and_return(mock_cow1)
allow(getFluffyCow).to receive(:call).with(777).and_return(mock_cow2)

但是回复没有回复。我做错了什么?

谢谢!

1 个答案:

答案 0 :(得分:0)

params将以字符串形式出现,因此在存根:call方法时将ID指定为字符串:

allow(getFluffyCow).to receive(:call).with('1234').and_return(mock_cow1)
allow(getFluffyCow).to receive(:call).with('777').and_return(mock_cow2)