2012-12-09 11 views
5

Próbuję przetestować, czy niezalogowany użytkownik jest przekierowywany na stronę tworzenia rejestracji podczas próby uzyskania dostępu do zabezpieczonej zawartości. Używam RSpec z Capybara do testów.Uzyskiwanie dostępu do skonfigurowanych komunikatów dla testów Rspec i Capybara

Aby upewnić się, że dotarły do ​​strony logowania, upewniam się, że strona, na której się znajdują, zawiera treść strony logowania powiadomienia o haszowaniu. (Domyślnie jest to: You need to sign in or sign up before continuing.)

Zamiast pisać testy jak:

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

Czy istnieje sposób, aby uzyskać dostęp do skonfigurowanego wiadomość (jeżeli ją później zmienić)? Coś jak: komunikaty

page.should have_content Devise::Messages.Login_required 

Odpowiedz

8

opracować są przechowywane w config/locales/devise.*.yml, więc można z nich korzystać jak wszystkie inne tłumaczenia:

page.should have_content I18n.t("devise.failure.unauthenticated") 
Powiązane problemy