首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Rspec + Cancan错误

Rspec + Cancan错误
EN

Stack Overflow用户
提问于 2015-03-20 23:06:45
回答 1查看 527关注 0票数 0

admin_spec.rb

代码语言:javascript
复制
it "checks access for user" do
  visit rails_admin_path
  login(:user) #helper method
  expect(page).to raise_error(CanCan::AccessDenied)
end

控制台输出

代码语言:javascript
复制
Failure/Error: login(:user)
CanCan::AccessDenied:
  You are not authorized to access this page.

但测试仍然是红色的。为什么以及如何修复它?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-03-23 16:53:38

你看过这篇文章吗?

CanCan中的测试能力

而不是真正访问URL,也许你可以使用can?方法来确定:user是否允许访问rails管理路径。

我猜你是在用设计?如果是这样的话,我找到了另一篇可能是有帮助的so文章。他们建议包括一个街区,以允许设计测试助手。

或者,切换到CanCanCan (这是我们目前使用的),它的工作要简单得多(因为不再支持CanCan ):

代码语言:javascript
复制
  context 'sign_in' do
    scenario 'with valid information should redirect to the administration dashboard', :js => true do
      sign_in_with sign_in_url, registered_user.email, 'validpassword', 'admin_user'

      expect(page).to have_content('Site Administration')
    end

    scenario 'with invalid information', :js => true do
      sign_in_with sign_in_url, registered_user.email, 'invalidvalidpassword', 'admin_user'
      expect(page).to have_content('Invalid email or password')
    end
  end
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29177144

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档