]> git.openstreetmap.org Git - rails.git/blobdiff - test/integration/page_locale_test.rb
Merge remote-tracking branch 'upstream/pull/2167'
[rails.git] / test / integration / page_locale_test.rb
index 43810db997885e1815ab20d2d668869649bc322c..9c42d9be760b993f420d2de5fa7493a8563e067a 100644 (file)
@@ -1,10 +1,9 @@
 require "test_helper"
 
 class PageLocaleTest < ActionDispatch::IntegrationTest
-  fixtures :users
-
   def setup
     I18n.locale = "en"
+    stub_hostip_requests
   end
 
   def teardown
@@ -12,34 +11,36 @@ class PageLocaleTest < ActionDispatch::IntegrationTest
   end
 
   def test_defaulting
-    user = users(:second_public_user)
+    user = create(:user, :languages => [])
 
-    post_via_redirect "/login", :username => user.email, :password => "test"
+    post "/login", :params => { :username => user.email, :password => "test" }
+    follow_redirect!
 
-    get "/diary/new", {}
+    get "/diary/new"
     assert_equal [], User.find(user.id).languages
     assert_select "html[lang=?]", "en"
 
-    get "/diary/new", {}, { "HTTP_ACCEPT_LANGUAGE" => "fr, en" }
-    assert_equal %w(fr en), User.find(user.id).languages
+    get "/diary/new", :headers => { "HTTP_ACCEPT_LANGUAGE" => "fr, en" }
+    assert_equal %w[fr en], User.find(user.id).languages
     assert_select "html[lang=?]", "fr"
   end
 
   def test_override
-    user = users(:german_user)
+    user = create(:user, :languages => ["de"])
 
     get "/diary"
     assert_select "html[lang=?]", "en"
 
-    get "/diary", :locale => "es"
+    get "/diary", :params => { :locale => "es" }
     assert_select "html[lang=?]", "es"
 
-    post_via_redirect "/login", :username => user.email, :password => "test"
+    post "/login", :params => { :username => user.email, :password => "test" }
+    follow_redirect!
 
     get "/diary"
     assert_select "html[lang=?]", "de"
 
-    get "/diary", :locale => "fr"
+    get "/diary", :params => { :locale => "fr" }
     assert_select "html[lang=?]", "fr"
   end
 end