如何使用rSpec在Rails 3中创建Devise。我有UsersController
和User
模型。这两个都与Devise有关,我正在编写控制器规格,我真的很难实现我的期望,因为Devise sign_in
真的让工作干扰了。
任何事情都会有所帮助。
答案 0 :(得分:74)
我发现现在很容易做到这一点。 rspec2和设计存在问题,但现在已经解决了。我想你需要更新你的宝石。然后你可以写
require 'spec_helper'
describe DoStuffController do
include Devise::TestHelpers
before (:each) do
@user = Factory.create(:user)
sign_in @user
end
describe "GET 'index'" do
it "should be successful" do
get 'index'
response.should be_success
end
end
end
[更新]在设计维基上,现在有一个详细的(可能是最新的)description。
答案 1 :(得分:9)
您可以尝试模拟设计所依赖的基础warden(http://wiki.github.com/hassox/warden/)对象,这里有一些指向如何使用RSpec实现此目的的详细信息:http://www.michaelharrison.ws/weblog/?p=349(条目涵盖其他一些主题同样,您想要的解决方案是在页面底部。)