mirror of
https://github.com/lingble/chatwoot.git
synced 2025-10-30 18:47:51 +00:00
feat: Enable super admin deletion of agent bots (#11748)
## Summary - Allow super admins to remove agent bots
This commit is contained in:
@@ -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]
|
||||
|
||||
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user