2012-12-09 18 views
5

Sto provando a verificare che un utente che non ha effettuato l'accesso sia indirizzato alla pagina di registrazione di dispositivo quando tentano di accedere al contenuto protetto. Sto usando RSpec con Capybara per i test.Access Devise Messaggi configurati per test Rspec e Capybara

Per assicurarsi che raggiungano la pagina di accesso, mi sto assicurando che la pagina su cui si trovano abbia il contenuto della pagina di login di notifica notifica hash. (Per impostazione predefinita, questo è: You need to sign in or sign up before continuing.)

Invece di scrivere il test come:

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

C'è un modo per accedere al messaggio configurato (nel caso in cui lo cambio più tardi)? Qualcosa di simile: i messaggi

page.should have_content Devise::Messages.Login_required 

risposta

8

Devise sono memorizzati in config/locales/devise.*.yml, in modo da potervi accedere come qualsiasi altre traduzioni:

page.should have_content I18n.t("devise.failure.unauthenticated") 
Problemi correlati