2011-08-19 40 views
1

我正在使用devise和sentient_user Gem - https://github.com/bokmann/sentient_user。 當我在模型中使用current_user時,它工作正常。 問題是我的Rspec測試失敗了。 在我的Rspec的測試我有使用rspec,device和sentient_user

describe MyModelWhereIUseCurrentUser do 

    include Devise::TestHelpers 

    before(:each) do 
     @user = Factory(:user) 
     sign_in @user 
    end 

    describe "current_user should work here" do 
    it "should do something" do 
     # Reference to MyModelWhereIUseCurrentUser and current_user is null there 
    end 
    end 
end 

然後在描述塊我打電話,我使用 當前用戶的模型。 我的測試失敗,因爲current_user是零。 我沒有正確登錄用戶,或者問題出在sentient_user上?

回答

1

sentient_user添加一個make_current方法,該方法可以在用戶實例上調用。您可以通過將@user.make_current添加到塊之前來解決您的問題。