當我添加before_filter authenticate_user時,所有測試都失敗!到我的控制器。我如何得到這個?Rails3 + Rspec2:未定義方法`驗證!'爲零:NilClass
謝謝
當我添加before_filter authenticate_user時,所有測試都失敗!到我的控制器。我如何得到這個?Rails3 + Rspec2:未定義方法`驗證!'爲零:NilClass
謝謝
您必須在測試中登錄用戶。我不知道你使用的驗證方法,但我會猜測。如果它的設計,創造一個規範/支持/ controller_macros.rb並插入:
module ControllerMacros
def login_user
before(:each) do
@request.env["devise.mapping"] = :user
@user = Factory.create(:user)
sign_in @user
end
end
end
我用工廠女孩創建一個工廠,但你可以做到這一點,只要你喜歡。然後,在您的測試中添加它想:
describe AlliancesController do
login_user
describe "GET 'show' without an id" do
......
看跌包括制定:: TestHelpers你的天賦 http://pupeno.com/2010/09/26/undefined-method-authenticate/