概要
Devise利用時のテスト
詳細
Devise利用時のController等のテストにおいて、認証以降のページが対称となる場合のテスト方法。
まずDevise::TestHelpersをincludeします
include Devise::TestHelpers
あとは各ケースのbefore等でsign_inメソッドを呼び出し、対象ユーザーを引数に渡します。
User自体はFactoryGirlなりFixtureなりで予め用意しておくこと。
before(:each) do sign_in :user, @login_user end
サンプル
require 'spec_helper' describe UsersController do include Devise::TestHelpers before(:each) do @login_user = FactoryGirl.create(:user) end describe "POST 'index'" do before(:each) do sign_in :user, @login_user end it "returns http success" do post 'index', @params response.should be_success end end end