]> git.openstreetmap.org Git - rails.git/blob - test/controllers/preferences/advanced_preferences_controller_test.rb
Merge remote-tracking branch 'upstream/pull/6102'
[rails.git] / test / controllers / preferences / advanced_preferences_controller_test.rb
1 require "test_helper"
2
3 module Preferences
4   class AdvancedPreferencesControllerTest < ActionDispatch::IntegrationTest
5     ##
6     # test all routes which lead to this controller
7     def test_routes
8       assert_routing(
9         { :path => "/preferences/advanced", :method => :get },
10         { :controller => "preferences/advanced_preferences", :action => "show" }
11       )
12       assert_routing(
13         { :path => "/preferences/advanced", :method => :put },
14         { :controller => "preferences/advanced_preferences", :action => "update" }
15       )
16     end
17
18     def test_update_languages
19       I18n.with_locale "en" do
20         user = create(:user, :languages => [])
21         session_for(user)
22
23         put advanced_preferences_path, :params => { :user => { :preferred_editor => "id", :languages => "fr es en" } }
24
25         assert_redirected_to advanced_preferences_path
26         follow_redirect!
27         assert_template :show
28         assert_select ".alert-success", /^Préférences mises à jour/
29         user.reload
30         assert_equal %w[fr es en], user.languages
31       end
32     end
33   end
34 end