feat: Enable super admin deletion of agent bots (#11748)

## Summary
- Allow super admins to remove agent bots
This commit is contained in:
Sojan Jose
2025-06-17 18:41:29 -04:00
committed by GitHub
parent b87b7972c1
commit 16dbcabaac
2 changed files with 22 additions and 1 deletions

View File

@@ -523,7 +523,7 @@ Rails.application.routes.draw do
resources :access_tokens, only: [:index, :show]
resources :installation_configs, only: [:index, :new, :create, :show, :edit, :update]
resources :agent_bots, only: [:index, :new, :create, :show, :edit, :update] do
resources :agent_bots, only: [:index, :new, :create, :show, :edit, :update, :destroy] do
delete :avatar, on: :member, action: :destroy_avatar
end
resources :platform_apps, only: [:index, :new, :create, :show, :edit, :update, :destroy]

View File

@@ -43,4 +43,25 @@ RSpec.describe 'Super Admin agent-bots API', type: :request do
end
end
end
describe 'DELETE /super_admin/agent_bots/:id' do
let!(:agent_bot) { create(:agent_bot) }
context 'when it is an unauthenticated super admin' do
it 'returns unauthorized' do
delete "/super_admin/agent_bots/#{agent_bot.id}"
expect(response).to have_http_status(:redirect)
expect(AgentBot.find_by(id: agent_bot.id)).to be_present
end
end
context 'when it is an authenticated super admin' do
it 'deletes the agent bot' do
sign_in(super_admin, scope: :super_admin)
delete "/super_admin/agent_bots/#{agent_bot.id}"
expect(response).to have_http_status(:redirect)
expect(AgentBot.find_by(id: agent_bot.id)).to be_nil
end
end
end
end