]> git.openstreetmap.org Git - rails.git/blob - test/integration/page_locale_test.rb
Update to rails 4.2.9
[rails.git] / test / integration / page_locale_test.rb
1 require "test_helper"
2
3 class PageLocaleTest < ActionDispatch::IntegrationTest
4   def setup
5     I18n.locale = "en"
6     stub_hostip_requests
7   end
8
9   def teardown
10     I18n.locale = "en"
11   end
12
13   def test_defaulting
14     user = create(:user, :languages => [])
15
16     post "/login", :username => user.email, :password => "test"
17     follow_redirect!
18
19     get "/diary/new", {}
20     assert_equal [], User.find(user.id).languages
21     assert_select "html[lang=?]", "en"
22
23     get "/diary/new", {}, { "HTTP_ACCEPT_LANGUAGE" => "fr, en" }
24     assert_equal %w[fr en], User.find(user.id).languages
25     assert_select "html[lang=?]", "fr"
26   end
27
28   def test_override
29     user = create(:user, :languages => ["de"])
30
31     get "/diary"
32     assert_select "html[lang=?]", "en"
33
34     get "/diary", :locale => "es"
35     assert_select "html[lang=?]", "es"
36
37     post "/login", :username => user.email, :password => "test"
38     follow_redirect!
39
40     get "/diary"
41     assert_select "html[lang=?]", "de"
42
43     get "/diary", :locale => "fr"
44     assert_select "html[lang=?]", "fr"
45   end
46 end