OmniAuth(omniauth_crowd)を使用して、正しいユーザー名とパスワードを送信しないと、ユーザーをログインページにリダイレクトすることをお勧めします。それはプロダクションでうまく動作しますが、私はそれをテストする厄介な問題があります。 OmniAuthプロバイダを模擬するCapybara :: InfiniteRedirectError
OmniAuthプラグインの作成者によって推奨されるように、私は、次のコードを使用:
OmniAuth.config.test_mode = true
OmniAuth.config.mock_auth[:someProvider] = :invalid_credentials
visit_page @page
上記のコードに自動的に(すなわちユーザ名とパスワードを入力せず)session#failure
にカピバラをリダイレクトします。私のsession#failure
はlogin_path
にリダイレクトされます。
したがって、私はループで終わる:
redirected more than 5 times, check for infinite redirects. (Capybara::InfiniteRedirectError)
私の場合のために最善の回避策は?