我正在尝试测试未登录用户的行为方式
describe "not logged in user" do
user_no_rights
it "can't access action index" do
expect(get :index).to raise_error(CanCan::AccessDenied)
end
end
我运行 rspec 时的输出
Failure/Error: expect(get :index).to raise_error("CanCan::AccessDenied:You are not authorized to access this page.")
CanCan::AccessDenied:
You are not authorized to access this page.
所以看起来正确的 execption 被提出了,但为什么规范没有通过?
最佳答案
我已将规范更改为:
describe "not logged in user" do
user_no_rights
it "can't access action index" do
expect{get :index}.to raise_error(CanCan::AccessDenied)
end
end
它有效。向托马斯致敬! :-)
关于ruby-on-rails - 带有 raise_error 的 RSpec 授权测试不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16389401/