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