aboutsummaryrefslogtreecommitdiffstats
path: root/spec/controllers/public_body_controller_spec.rb
diff options
context:
space:
mode:
authorMark Longair <mhl@pobox.com>2013-11-19 11:35:41 +0000
committerLouise Crow <louise.crow@gmail.com>2013-11-19 15:00:57 +0000
commit6ce13edab05e938d7cd9d0b18b99fe608ca25306 (patch)
treed6d0927479bb10b4b6824da6fa3e92b88f949ef8 /spec/controllers/public_body_controller_spec.rb
parent45a19e32e5d830d650768fef45273d60a7e7cd29 (diff)
Use upstream globalize.
We're trying to switch to an upstream version of globalize, which now has Henare's change to allowed blank values without them being converted to nil - however, there is another intermediate change that was introduced which means that the name is only written back to the original table if the locale matches the default locale. This is described in more depth here: globalize/globalize#183 This change broke the make_single_language_example helper, but this commit fixes that by also setting the default locale before creating the example public bodies.
Diffstat (limited to 'spec/controllers/public_body_controller_spec.rb')
-rw-r--r--spec/controllers/public_body_controller_spec.rb44
1 files changed, 23 insertions, 21 deletions
diff --git a/spec/controllers/public_body_controller_spec.rb b/spec/controllers/public_body_controller_spec.rb
index 6800765f2..0e0b0a575 100644
--- a/spec/controllers/public_body_controller_spec.rb
+++ b/spec/controllers/public_body_controller_spec.rb
@@ -82,21 +82,23 @@ describe PublicBodyController, "when listing bodies" do
def make_single_language_example(locale)
result = nil
- I18n.with_locale(locale) do
- case locale
- when :en
- result = PublicBody.new(:name => 'English only',
- :short_name => 'EO')
- when :es
- result = PublicBody.new(:name => 'Español Solamente',
- :short_name => 'ES')
- else
- raise StandardError.new "Unknown locale #{locale}"
+ with_default_locale(locale) do
+ I18n.with_locale(locale) do
+ case locale
+ when :en
+ result = PublicBody.new(:name => 'English only',
+ :short_name => 'EO')
+ when :es
+ result = PublicBody.new(:name => 'Español Solamente',
+ :short_name => 'ES')
+ else
+ raise StandardError.new "Unknown locale #{locale}"
+ end
+ result.request_email = "#{locale}@example.org"
+ result.last_edit_editor = 'test'
+ result.last_edit_comment = ''
+ result.save
end
- result.request_email = "#{locale}@example.org"
- result.last_edit_editor = 'test'
- result.last_edit_comment = ''
- result.save
end
result
end
@@ -188,13 +190,13 @@ describe PublicBodyController, "when listing bodies" do
end
it "should list bodies in alphabetical order with different locale" do
- I18n.default_locale = :es
- get :list
- response.should render_template('list')
- assigns[:public_bodies].should == [ public_bodies(:geraldine_public_body), public_bodies(:humpadink_public_body) ]
- assigns[:tag].should == "all"
- assigns[:description].should == ""
- I18n.default_locale = :en
+ with_default_locale(:es) do
+ get :list
+ response.should render_template('list')
+ assigns[:public_bodies].should == [ public_bodies(:geraldine_public_body), public_bodies(:humpadink_public_body) ]
+ assigns[:tag].should == "all"
+ assigns[:description].should == ""
+ end
end
it "should list a tagged thing on the appropriate list page, and others on the other page, and all still on the all page" do