我设置了 Devise,所以我可以用这个编写控制器规格。然后我设置了 Devise,这样用户就不能删除他们的帐户。
现在我想编写一个规范以确保控制器无法对 Devise 用户调用销毁操作。我怎么写这个?
在我的控制器中,设计部分看起来像这样
devise_for :users, skip: :registrations do
resource :registration,
only: [:new, :create, :edit, :update],
path: 'users',
path_names: { new: 'sign_up' },
controller: 'devise/registrations',
as: :user_registration do
get :cancel
end
end
在我的规范中,我正在尝试执行以下操作,但它不起作用。我什至不确定我是否写对了。我认为我试图访问的页面是错误的。
describe UsersController do
login_user # from devise controller helper
it "does not allow deleting of user" do
get :users, :method => :delete
# assert here user was not deleted
end
end