From 1809048105a7e04095f6a0d1d466adeb0fdcffa5 Mon Sep 17 00:00:00 2001 From: Shlee Date: Fri, 23 Jan 2026 02:31:44 +1030 Subject: [PATCH] Safefy: Updated Admin::AccountDeletionWorker to match AccountDeletionWorker (#37577) --- app/workers/admin/account_deletion_worker.rb | 5 ++++- spec/workers/admin/account_deletion_worker_spec.rb | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/app/workers/admin/account_deletion_worker.rb b/app/workers/admin/account_deletion_worker.rb index 5dfdfb6e73..cd0d9c1f5e 100644 --- a/app/workers/admin/account_deletion_worker.rb +++ b/app/workers/admin/account_deletion_worker.rb @@ -6,7 +6,10 @@ class Admin::AccountDeletionWorker sidekiq_options queue: 'pull', lock: :until_executed, lock_ttl: 1.week.to_i def perform(account_id) - DeleteAccountService.new.call(Account.find(account_id), reserve_username: true, reserve_email: true) + delete_account = Account.find(account_id) + return unless delete_account.unavailable? + + DeleteAccountService.new.call(delete_account, reserve_username: true, reserve_email: true) rescue ActiveRecord::RecordNotFound true end diff --git a/spec/workers/admin/account_deletion_worker_spec.rb b/spec/workers/admin/account_deletion_worker_spec.rb index e41b734f21..7fc56e4289 100644 --- a/spec/workers/admin/account_deletion_worker_spec.rb +++ b/spec/workers/admin/account_deletion_worker_spec.rb @@ -6,7 +6,7 @@ RSpec.describe Admin::AccountDeletionWorker do let(:worker) { described_class.new } describe 'perform' do - let(:account) { Fabricate(:account) } + let(:account) { Fabricate(:account, suspended: true) } let(:service) { instance_double(DeleteAccountService, call: true) } it 'calls delete account service' do