2016-07-14 4 views
1

私はrailsのビルドテストとアクティブな管理を使用しています。ほとんどの私のテスト(あなたが実際のソフトウェアにログインする必要があるテスト)では、テストが何をすべきかを実行する代わりに、ログインページにリダイレクトされているというエラーが出ていますあなたはログインしていません)。テストの前に管理者ユーザーとしてログインするか、テストにログインする必要性を無視するにはどうすればよいですか?アクティブな管理者によるレールテスト

明確にするために、ここでの結果は、そのような試験である:

Failure: 
PaymentsControllerTest#test_should_get_new [/home/silvertail/Documents/rails/bridal/test/controllers/payments_controller_test.rb:16]: 
Expected response to be a <2XX: success>, but was a <302: Found> redirect to <http://www.example.com/admin/login> 

私のようなものを探しています:あなたは、あなたのテスト環境にadminユーザーをログインする必要がcurrent_admin_user = admin_users(:one)

答えて

0

。あなたは次のようなことをすることができます:

test "should get new" do 

    user = users(:one) 
    # The user :one should be defined in your users.yml and flagged as admin 

    get login_path 
    post login_path, params: { session: { email: user.email, 
             password: user.password} } 
    assert_response :success 

end 

これは役に立ちます。

関連する問題