ruby-on-rails – any_instance should_receive无法正常工作

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – any_instance should_receive无法正常工作前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有这样的代码
@dns = "#{params[:domain].split('/').reverse.join('.')}.#{params[:zone]}"
w = Whois::Client.new
@r = w.query(@dns)

有路线:

match "domains/:zone/*domain" => "domains#show"

我正在使用Whois Gem

我想测试一下,所以我有一个测试:

it "should query 'google.com.ua' from /ua/com/google" do
    get :show,:zone => 'ua',:domain => 'com/google'
    dns = "google.com.ua"
    Whois::Client.any_instance.should_receive(:query).with(dns)
end

结果我得到:

Exactly one instance should have received the following message(s) but didn't: query

哪里可以问题?我100%肯定.query被调用

解决方法

调用查询方法后,您可能会设置期望值?

猜你在找的Ruby相关文章