49 lines
1.3 KiB
Ruby
49 lines
1.3 KiB
Ruby
require "rails_helper"
|
|
|
|
feature "Localization" do
|
|
|
|
background do
|
|
login_as_manager
|
|
end
|
|
|
|
scenario "Wrong locale" do
|
|
visit management_root_path(locale: :es)
|
|
visit management_root_path(locale: :klingon)
|
|
|
|
expect(page).to have_text("Gestión")
|
|
end
|
|
|
|
scenario "Available locales appear in the locale switcher" do
|
|
visit management_root_path
|
|
|
|
within(".locale-form .js-location-changer") do
|
|
expect(page).to have_content "Español"
|
|
expect(page).to have_content "English"
|
|
end
|
|
end
|
|
|
|
scenario "The current locale is selected" do
|
|
visit management_root_path
|
|
expect(page).to have_select("locale-switcher", selected: "English")
|
|
expect(page).to have_text("Management")
|
|
end
|
|
|
|
scenario "Changing the locale", :js do
|
|
visit management_root_path
|
|
expect(page).to have_content("Language")
|
|
|
|
select("Español", from: "locale-switcher")
|
|
expect(page).to have_content("Idioma")
|
|
expect(page).not_to have_content("Language")
|
|
expect(page).to have_select("locale-switcher", selected: "Español")
|
|
end
|
|
|
|
scenario "Locale switcher not present if only one locale" do
|
|
allow(I18n).to receive(:available_locales).and_return([:en])
|
|
|
|
visit management_root_path
|
|
expect(page).not_to have_content("Language")
|
|
expect(page).not_to have_css("div.locale")
|
|
end
|
|
end
|