##// END OF EJS Templates
Merged r4066 from trunk....
Eric Davis -
r4022:1e370f2c5a61
parent child
Show More
@@ -95,7 +95,9 class UsersController < ApplicationController
95 95 if request.post?
96 96 @user.admin = params[:user][:admin] if params[:user][:admin]
97 97 @user.login = params[:user][:login] if params[:user][:login]
98 @user.password, @user.password_confirmation = params[:password], params[:password_confirmation] unless params[:password].nil? or params[:password].empty? or @user.auth_source_id
98 if params[:password].present? && (@user.auth_source_id.nil? || params[:user][:auth_source_id].blank?)
99 @user.password, @user.password_confirmation = params[:password], params[:password_confirmation]
100 end
99 101 @user.group_ids = params[:user][:group_ids] if params[:user][:group_ids]
100 102 @user.attributes = params[:user]
101 103 # Was the account actived ? (do it before User#save clears the change)
@@ -144,6 +144,18 class UsersControllerTest < ActionController::TestCase
144 144 assert mail.body.include?('newpass')
145 145 end
146 146
147 test "POST :edit with a password change to an AuthSource user switching to Internal authentication" do
148 # Configure as auth source
149 u = User.find(2)
150 u.auth_source = AuthSource.find(1)
151 u.save!
152
153 post :edit, :id => u.id, :user => {:auth_source_id => ''}, :password => 'newpass', :password_confirmation => 'newpass'
154
155 assert_equal nil, u.reload.auth_source
156 assert_equal User.hash_password('newpass'), u.reload.hashed_password
157 end
158
147 159 def test_edit_membership
148 160 post :edit_membership, :id => 2, :membership_id => 1,
149 161 :membership => { :role_ids => [2]}
General Comments 0
You need to be logged in to leave comments. Login now