diff --git a/test/functional/my_controller_test.rb b/test/functional/my_controller_test.rb index fe858dc31..4c5d0893e 100644 --- a/test/functional/my_controller_test.rb +++ b/test/functional/my_controller_test.rb @@ -180,9 +180,9 @@ class MyControllerTest < Redmine::ControllerTest query2 = IssueQuery.create!(:name => 'Other issues', :user => user, :column_names => [:tracker, :subject, :priority]) user.pref.my_page_layout = {'top' => ['issuequery__1', 'issuequery']} user.pref.my_page_settings = { - 'issuequery' => {:query_id => query1.id, :columns => [:subject, :due_date]}, - 'issuequery__1' => {:query_id => query2.id} - } + 'issuequery' => {:query_id => query1.id, :columns => [:subject, :due_date]}, + 'issuequery__1' => {:query_id => query2.id} + } user.pref.save! get :page @@ -385,7 +385,9 @@ class MyControllerTest < Redmine::ControllerTest end def test_update_account - put :account, :params => { + put( + :account, + :params => { :user => { :firstname => "Joe", :login => "root", @@ -394,10 +396,9 @@ class MyControllerTest < Redmine::ControllerTest :custom_field_values => { "4" => "0100562500" } - } } - + ) assert_redirected_to '/my/account' user = User.find(2) assert_equal "Joe", user.firstname @@ -410,13 +411,15 @@ class MyControllerTest < Redmine::ControllerTest def test_update_account_should_send_security_notification ActionMailer::Base.deliveries.clear - put :account, :params => { + put( + :account, + :params => { :user => { :mail => 'foobar@example.com' } } - + ) assert_not_nil (mail = ActionMailer::Base.deliveries.last) assert_mail_body_match '0.0.0.0', mail assert_mail_body_match I18n.t(:mail_body_security_notification_change_to, field: I18n.t(:field_mail), value: 'foobar@example.com'), mail @@ -434,11 +437,14 @@ class MyControllerTest < Redmine::ControllerTest assert_select 'label[for="pref_notify_about_high_priority_issues"]' # preference should be persisted - put :account, :params => { + put( + :account, + :params => { :pref => { notify_about_high_priority_issues: '1' } } + ) assert User.find(2).notify_about_high_priority_issues? # preference should be hidden if there aren't any priorities @@ -486,9 +492,12 @@ class MyControllerTest < Redmine::ControllerTest def test_post_destroy_without_confirmation_should_destroy_account assert_difference 'User.count', -1 do - post :destroy, :params => { + post( + :destroy, + :params => { :confirm => '1' } + ) end assert_redirected_to '/' assert_match /deleted/i, flash[:notice] @@ -498,9 +507,12 @@ class MyControllerTest < Redmine::ControllerTest User.any_instance.stubs(:own_account_deletable?).returns(false) assert_no_difference 'User.count' do - post :destroy, :params => { + post( + :destroy, + :params => { :confirm => '1' } + ) end assert_redirected_to '/my/account' end @@ -514,21 +526,27 @@ class MyControllerTest < Redmine::ControllerTest end def test_update_password - post :password, :params => { + post( + :password, + :params => { :password => 'jsmith', :new_password => 'secret123', :new_password_confirmation => 'secret123' } + ) assert_redirected_to '/my/account' assert User.try_to_login('jsmith', 'secret123') end def test_update_password_with_non_matching_confirmation - post :password, :params => { + post( + :password, + :params => { :password => 'jsmith', :new_password => 'secret123', :new_password_confirmation => 'secret1234' } + ) assert_response :success assert_select_error /Password doesn.*t match confirmation/ assert User.try_to_login('jsmith', 'jsmith') @@ -536,11 +554,14 @@ class MyControllerTest < Redmine::ControllerTest def test_update_password_with_wrong_password # wrong password - post :password, :params => { + post( + :password, + :params => { :password => 'wrongpassword', :new_password => 'secret123', :new_password_confirmation => 'secret123' } + ) assert_response :success assert_equal 'Wrong password', flash[:error] assert User.try_to_login('jsmith', 'jsmith') @@ -556,12 +577,14 @@ class MyControllerTest < Redmine::ControllerTest def test_update_password_should_send_security_notification ActionMailer::Base.deliveries.clear - post :password, :params => { + post( + :password, + :params => { :password => 'jsmith', :new_password => 'secret123', :new_password_confirmation => 'secret123' } - + ) assert_not_nil (mail = ActionMailer::Base.deliveries.last) assert_mail_body_no_match 'secret123', mail # just to be sure: pw should never be sent! assert_select_email do @@ -573,13 +596,17 @@ class MyControllerTest < Redmine::ControllerTest user = User.generate!(:language => 'en') @request.session[:user_id] = user.id - post :update_page, :params => { + post( + :update_page, + :params => { :settings => { 'issuesassignedtome' => { - 'columns' => ['subject', 'due_date']} + 'columns' => ['subject', 'due_date'] + } } }, :xhr => true + ) assert_response :success assert_include '$("#block-issuesassignedtome").replaceWith(', response.body assert_include 'Due date', response.body @@ -588,42 +615,57 @@ class MyControllerTest < Redmine::ControllerTest end def test_add_block - post :add_block, :params => { + post( + :add_block, + :params => { :block => 'issueswatched' } + ) assert_redirected_to '/my/page' assert User.find(2).pref[:my_page_layout]['top'].include?('issueswatched') end def test_add_block_xhr - post :add_block, :params => { + post( + :add_block, + :params => { :block => 'issueswatched' }, :xhr => true + ) assert_response :success assert_include 'issueswatched', User.find(2).pref[:my_page_layout]['top'] end def test_add_invalid_block_should_error - post :add_block, :params => { + post( + :add_block, + :params => { :block => 'invalid' } + ) assert_response 422 end def test_remove_block - post :remove_block, :params => { + post( + :remove_block, + :params => { :block => 'issuesassignedtome' } + ) assert_redirected_to '/my/page' assert !User.find(2).pref[:my_page_layout].values.flatten.include?('issuesassignedtome') end def test_remove_block_xhr - post :remove_block, :params => { + post( + :remove_block, + :params => { :block => 'issuesassignedtome' }, :xhr => true + ) assert_response :success assert_include '$("#block-issuesassignedtome").remove();', response.body assert !User.find(2).pref[:my_page_layout].values.flatten.include?('issuesassignedtome') @@ -634,11 +676,14 @@ class MyControllerTest < Redmine::ControllerTest pref.my_page_layout = {'left' => ['news', 'calendar', 'documents']} pref.save! - post :order_blocks, :params => { + post( + :order_blocks, + :params => { :group => 'left', :blocks => ['documents', 'calendar', 'news'] }, :xhr => true + ) assert_response :success assert_equal ['documents', 'calendar', 'news'], User.find(2).pref.my_page_layout['left'] end @@ -648,11 +693,14 @@ class MyControllerTest < Redmine::ControllerTest pref.my_page_layout = {'left' => ['news', 'documents'], 'right' => ['calendar']} pref.save! - post :order_blocks, :params => { + post( + :order_blocks, + :params => { :group => 'left', :blocks => ['news', 'calendar', 'documents'] }, :xhr => true + ) assert_response :success assert_equal({'left' => ['news', 'calendar', 'documents'], 'right' => []}, User.find(2).pref.my_page_layout) end