parent
bc590ce63b
commit
4bcc097750
|
@ -178,6 +178,7 @@ v 8.5.0
|
|||
|
||||
v 8.4.5
|
||||
- No CE-specific changes
|
||||
- User deletion is now done in the background so the request can not time out
|
||||
|
||||
v 8.4.4
|
||||
- Update omniauth-saml gem to 1.4.2
|
||||
|
|
|
@ -122,7 +122,7 @@ class Admin::UsersController < Admin::ApplicationController
|
|||
DeleteUserService.new(current_user).execute(user)
|
||||
|
||||
respond_to do |format|
|
||||
format.html { redirect_to admin_users_path }
|
||||
format.html { redirect_to admin_users_path, notice: "The user is being deleted." }
|
||||
format.json { head :ok }
|
||||
end
|
||||
end
|
||||
|
|
|
@ -0,0 +1,10 @@
|
|||
class DeleteUserWorker
|
||||
include Sidekiq::Worker
|
||||
|
||||
def perform(current_user_id, delete_user_id)
|
||||
delete_user = User.find(delete_user_id)
|
||||
current_user = User.find(current_user_id)
|
||||
|
||||
DeleteUserService.new(current_user).execute(delete_user)
|
||||
end
|
||||
end
|
|
@ -0,0 +1,22 @@
|
|||
require 'spec_helper'
|
||||
|
||||
describe DeleteUserWorker do
|
||||
describe "Deletes a user and all their personal projects" do
|
||||
let!(:user) { create(:user) }
|
||||
let!(:current_user) { create(:user) }
|
||||
let!(:namespace) { create(:namespace, owner: user) }
|
||||
let!(:project) { create(:project, namespace: namespace) }
|
||||
|
||||
before do
|
||||
DeleteUserWorker.new.perform(current_user.id, user.id)
|
||||
end
|
||||
|
||||
it 'deletes all personal projects' do
|
||||
expect { Project.find(project.id) }.to raise_error(ActiveRecord::RecordNotFound)
|
||||
end
|
||||
|
||||
it 'deletes the user' do
|
||||
expect { User.find(user.id) }.to raise_error(ActiveRecord::RecordNotFound)
|
||||
end
|
||||
end
|
||||
end
|
Loading…
Reference in New Issue