From cd73e401622d31a189d8cf3b38e9cbe46ca73e96 Mon Sep 17 00:00:00 2001 From: Seb Bacon Date: Wed, 3 Aug 2011 14:18:22 +0100 Subject: Fail silently if there's no user matching one referenced in the current session. Fixes #105 --- spec/controllers/general_controller_spec.rb | 7 +++++++ 1 file changed, 7 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 7807a5541..619635eea 100644 --- a/spec/controllers/general_controller_spec.rb +++ b/spec/controllers/general_controller_spec.rb @@ -17,6 +17,13 @@ describe GeneralController, "when searching" do response.should be_success end + it "doesn't raise an error when there's no user matching the one in the session" do + session[:user_id] = 999 + get :frontpage + response.should be_success + end + + it "should redirect from search query URL to pretty URL" do post :search_redirect, :query => "mouse" # query hidden in POST parameters response.should redirect_to(:action => 'search', :combined => "mouse") # URL /search/:query -- cgit v1.2.3 From a3c00d25d1bf6dc9ef554a44809e732a96ec1533 Mon Sep 17 00:00:00 2001 From: Seb Bacon Date: Mon, 8 Aug 2011 13:02:03 +0100 Subject: Ensure we use sensible fallbacks for setting the default / initial locale for a user. (Partially) fixes #114 --- spec/controllers/general_controller_spec.rb | 21 +++++++++++++++++++++ 1 file changed, 21 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 619635eea..63ad6873c 100644 --- a/spec/controllers/general_controller_spec.rb +++ b/spec/controllers/general_controller_spec.rb @@ -17,6 +17,27 @@ describe GeneralController, "when searching" do response.should be_success end + it "should render the front page with default language" do + get :frontpage + response.should have_tag('html[lang="en"]') + end + + it "should render the front page with default language" do + old_default_locale = I18n.default_locale + I18n.default_locale = "es" + get :frontpage + response.should have_tag('html[lang="es"]') + I18n.default_locale = old_default_locale + end + + it "should render the front page with browser-selected language" do + accept_language = "es-ES,en-GB,en-US;q=0.8,en;q=0.6" + request.env['HTTP_ACCEPT_LANGUAGE'] = accept_language + get :frontpage + response.should have_tag('html[lang="es"]') + request.env['HTTP_ACCEPT_LANGUAGE'] = nil + end + it "doesn't raise an error when there's no user matching the one in the session" do session[:user_id] = 999 get :frontpage -- cgit v1.2.3 From d5e1fc1c612e8edf6c571d019cf68ba66b3bee64 Mon Sep 17 00:00:00 2001 From: Seb Bacon Date: Mon, 8 Aug 2011 15:24:01 +0100 Subject: Introduce config setting to ignore browser language settings --- spec/controllers/general_controller_spec.rb | 16 +++++++++++++++- 1 file changed, 15 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 63ad6873c..bc744a9cd 100644 --- a/spec/controllers/general_controller_spec.rb +++ b/spec/controllers/general_controller_spec.rb @@ -30,7 +30,21 @@ describe GeneralController, "when searching" do I18n.default_locale = old_default_locale end - it "should render the front page with browser-selected language" do + it "should render the front page with default language and ignore the browser setting" do + config = MySociety::Config.load_default() + config['USE_DEFAULT_BROWSER_LANGUAGE'] = false + accept_language = "en-GB,en-US;q=0.8,en;q=0.6" + request.env['HTTP_ACCEPT_LANGUAGE'] = accept_language + old_default_locale = I18n.default_locale + I18n.default_locale = "es" + get :frontpage + response.should have_tag('html[lang="es"]') + I18n.default_locale = old_default_locale + end + + it "should render the front page with browser-selected language when there's no default set" do + config = MySociety::Config.load_default() + config['USE_DEFAULT_BROWSER_LANGUAGE'] = true accept_language = "es-ES,en-GB,en-US;q=0.8,en;q=0.6" request.env['HTTP_ACCEPT_LANGUAGE'] = accept_language get :frontpage -- cgit v1.2.3 From 6e57ba619e11ee76a29eda12e7cfef1f9aefba8e Mon Sep 17 00:00:00 2001 From: Seb Bacon Date: Wed, 10 Aug 2011 16:19:48 +0100 Subject: Fix up missing fixtures (causing failures dependent on order the tests were funr). Also tidy up raw_email setup code to match everywhere. --- spec/controllers/general_controller_spec.rb | 4 ++++ 1 file changed, 4 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 bc744a9cd..76e1bb5e6 100644 --- a/spec/controllers/general_controller_spec.rb +++ b/spec/controllers/general_controller_spec.rb @@ -12,6 +12,10 @@ describe GeneralController, "when searching" do :incoming_messages, :comments ] + before(:each) do + load_raw_emails_data(raw_emails) + end + it "should render the front page successfully" do get :frontpage response.should be_success -- cgit v1.2.3 From a7df6f479f452503e3a99fe21b5827b96f4e279c Mon Sep 17 00:00:00 2001 From: Seb Bacon Date: Mon, 15 Aug 2011 11:34:25 +0100 Subject: Monkey patch around bug that was stripping out quotes from search phrases. Fixes #38 --- spec/controllers/general_controller_spec.rb | 1 - 1 file changed, 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 76e1bb5e6..3640a8148 100644 --- a/spec/controllers/general_controller_spec.rb +++ b/spec/controllers/general_controller_spec.rb @@ -62,7 +62,6 @@ describe GeneralController, "when searching" do response.should be_success end - it "should redirect from search query URL to pretty URL" do post :search_redirect, :query => "mouse" # query hidden in POST parameters response.should redirect_to(:action => 'search', :combined => "mouse") # URL /search/:query -- cgit v1.2.3