diff --git a/config/environments/test.rb b/config/environments/test.rb index 77cd9ed144e..452f78fd717 100644 --- a/config/environments/test.rb +++ b/config/environments/test.rb @@ -1,6 +1,11 @@ Rails.application.configure do # Settings specified here will take precedence over those in config/application.rb. + # Some tests require the following languages (en, es, fr, nl, pt-BR) + # so we override the available languages for the test environment. + config.i18n.default_locale = :en + config.i18n.available_locales = %w[de en es fr nl pt-BR zh-CN] + # The test environment is used exclusively to run your application's # test suite. You never need to work with it otherwise. Remember that # your test database is "scratch space" for the test suite and is wiped diff --git a/spec/features/remote_translations_spec.rb b/spec/features/remote_translations_spec.rb index 1ff98d9b28a..92a16d1c310 100644 --- a/spec/features/remote_translations_spec.rb +++ b/spec/features/remote_translations_spec.rb @@ -5,8 +5,7 @@ before do Setting["feature.remote_translations"] = true create(:proposal) - available_locales_response = ["ar", "de", "en", "es", "fa", "fr", "he", "it", "nl", "pl", - "pt", "sv", "zh-Hans", "zh-Hant"] + available_locales_response = %w[de en es fr pt zh-Hans] expect(RemoteTranslations::Microsoft::AvailableLocales).to receive(:available_locales). and_return(available_locales_response) end @@ -27,18 +26,14 @@ end scenario "should display text in English" do - available_locales_with_fallback_en = [:ar, :de, :fa, :he, :nl, :pl, :sv] - - visit root_path(locale: available_locales_with_fallback_en.sample) + visit root_path(locale: :de) expect(page).to have_css ".remote-translations-button" expect(page).to have_content "The content of this page is not available in your language" end scenario "should display text in English after parse key" do - available_locales_with_fallback_en = [:"zh-CN", :"zh-TW"] - - visit root_path(locale: available_locales_with_fallback_en.sample) + visit root_path(locale: :"zh-CN") expect(page).to have_css ".remote-translations-button" expect(page).to have_content "The content of this page is not available in your language" @@ -53,9 +48,7 @@ end scenario "with locale that has :es fallback" do - available_locales_with_fallback_es = [:es, :fr, :it] - - visit root_path(locale: available_locales_with_fallback_es.sample) + visit root_path(locale: :fr) expect(page).to have_css ".remote-translations-button" expect(page).to have_content "El contenido de esta página no está disponible en tu idioma" @@ -72,9 +65,7 @@ end scenario "Not display remote translation button when locale is not included in microsoft translate client" do - not_available_locales = [:val, :gl, :sq] - - visit root_path(locale: not_available_locales.sample) + visit root_path(locale: :nl) expect(page).not_to have_css ".remote-translations-button" end diff --git a/spec/rails_helper.rb b/spec/rails_helper.rb index 65e70366d48..a39e8e55dfb 100644 --- a/spec/rails_helper.rb +++ b/spec/rails_helper.rb @@ -13,7 +13,6 @@ require "selenium/webdriver" Rails.application.load_tasks if Rake::Task.tasks.empty? -I18n.default_locale = :en include Warden::Test::Helpers Warden.test_mode!