【发布时间】:2014-03-11 16:08:41
【问题描述】:
我有一个调用 current_user.eligible_for_reward 的辅助方法?我想在 Capybara 接受规范中存根该调用。在我的模型中,我有一个占位符虚拟方法:
User.rb
def eligible_for_reward?
"blah"
end
这是我迄今为止尝试过的:
我尝试存根 current_user,但由于控制器为 nil,因此导致“修改冻结对象”错误。我相信只有当我使用 RSpec 的 get 而不是访问 some_path 时才会设置控制器。我相信我需要坚持访问 some_path,否则我的 page.should ... 都会失败,因为没有设置页面。
我尝试以用户身份登录 (login_as(user) 成功通过注册/登录),然后存根 user.eligible_for_reward?,但这似乎不起作用,因为我还在回来测试“等等”
有没有一种好方法来存根这个方法?
【问题讨论】:
标签: ruby-on-rails-3 testing rspec capybara