From 118bc669365a38d60f696802e1f5d678393ed2f3 Mon Sep 17 00:00:00 2001 From: Seb Bacon Date: Thu, 14 Jun 2012 13:38:34 +0100 Subject: Use PO files from `spec/fixtures/locale` rather than the application - makes it less brittle. --- spec/controllers/general_controller_spec.rb | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'spec/controllers/general_controller_spec.rb') diff --git a/spec/controllers/general_controller_spec.rb b/spec/controllers/general_controller_spec.rb index 8a08ab7d0..19b96eb23 100644 --- a/spec/controllers/general_controller_spec.rb +++ b/spec/controllers/general_controller_spec.rb @@ -83,6 +83,11 @@ describe GeneralController, "when searching" do response.should have_text(home_link_regex) end + it "should use our test PO files rather than the application one" do + I18n.default_locale = :es + get :frontpage + response.should have_text(/XOXO/) + end it "should generate URLs without a locale prepended when there's only one locale set" do old_fgt_available_locales = FastGettext.default_available_locales old_i18n_available_locales = I18n.available_locales -- cgit v1.2.3 From b30554dc4fcdeeb42d827ead474b1e135bc877e8 Mon Sep 17 00:00:00 2001 From: Seb Bacon Date: Thu, 14 Jun 2012 13:47:47 +0100 Subject: Ensure we generate URLs containing the current locale, even if the locale contains an underscore. Includes a bonus test to ensure that locales with unknown territories fall back to known languages. --- spec/controllers/general_controller_spec.rb | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) (limited to 'spec/controllers/general_controller_spec.rb') diff --git a/spec/controllers/general_controller_spec.rb b/spec/controllers/general_controller_spec.rb index 19b96eb23..df2c139bd 100644 --- a/spec/controllers/general_controller_spec.rb +++ b/spec/controllers/general_controller_spec.rb @@ -77,7 +77,7 @@ describe GeneralController, "when searching" do end describe "when using different locale settings" do - home_link_regex = /href=".*\/en"/ + home_link_regex = /href=".*\/en\// it "should generate URLs with a locale prepended when there's more than one locale set" do get :frontpage response.should have_text(home_link_regex) @@ -87,7 +87,24 @@ describe GeneralController, "when searching" do I18n.default_locale = :es get :frontpage response.should have_text(/XOXO/) + I18n.default_locale = :en end + + it "should generate URLs that include the locale when using one that includes an underscore" do + I18n.default_locale = :"en_GB" + get :frontpage + response.should have_text(/href="\/en_GB\//) + I18n.default_locale = :en + end + + it "should fall back to the language if the territory is unknown" do + I18n.default_locale = :"en_US" + get :frontpage + response.should have_text(/href="\/en\//) + response.should_not have_text(/href="\/en_US\//) + I18n.default_locale = :en + end + it "should generate URLs without a locale prepended when there's only one locale set" do old_fgt_available_locales = FastGettext.default_available_locales old_i18n_available_locales = I18n.available_locales -- cgit v1.2.3