2012-12-09 10 views
5

セキュリティで保護されたコンテンツにアクセスしようとしたときに、ログインしていないユーザーがdeviseサインアップページに誘導されていることをテストしようとしています。私はテストのためにCapybaraと共にRSpecを使用しています。RspecとCapybaraテスト用のAccess Devise Configuredメッセージ

ログインページに到達するには、最終ページにdeviseログインページの通知ハッシュの内容が含まれていることを確認します。 (デフォルトでは、これは次のとおりです。You need to sign in or sign up before continuing.

よりもむしろのようなテストを書く:

page.should have_content "You need to sign in or sign up before continuing." 

設定したメッセージを(私は後でそれを変更する場合)にアクセスする方法がありますか?以下のような何か:

page.should have_content Devise::Messages.Login_required 

答えて

8

工夫メッセージはconfig/locales/devise.*.ymlに格納されているので、あなたは他の翻訳のようにそれらにアクセスすることができます。

page.should have_content I18n.t("devise.failure.unauthenticated") 
関連する問題