【发布时间】:2015-05-08 13:27:38
【问题描述】:
我有一个辅助模块,如果当前用户没有访问网页的权限,它会触发 redirect_to。
我在运行测试时收到NoMethodError 错误,因为帮助程序实际上没有redirect_to 方法。我试过像这样删除redirect_to:
it "redirects the user to the user's langing page if the user doesn't have permission" do
allow(helper).to receive(:current_or_guest_user) { test_user }
expect(helper).to receive(:redirect_to)
helper.require_permission :view_admins
end
但是我得到一个很长很长的错误,助手没有实现redirect_to。
有没有办法把这个方法去掉?
【问题讨论】:
-
redirect_to 是一种动作控制器方法,因此只能在控制器中使用
-
是的,但这是一个将包含在控制器中的模块,所以它工作得很好 - 我只是不确定如何测试它。
标签: ruby-on-rails rspec mocking