mirror of
https://github.com/lingble/chatwoot.git
synced 2026-03-20 03:52:43 +00:00
chore: Fix issue with deleting interactive messages (#10123)
- fix issue with deleting interactive messages
This commit is contained in:
@@ -13,7 +13,7 @@ class Api::V1::Accounts::Conversations::MessagesController < Api::V1::Accounts::
|
||||
|
||||
def destroy
|
||||
ActiveRecord::Base.transaction do
|
||||
message.update!(content: I18n.t('conversations.messages.deleted'), content_attributes: { deleted: true })
|
||||
message.update!(content: I18n.t('conversations.messages.deleted'), content_type: :text, content_attributes: { deleted: true })
|
||||
message.attachments.destroy_all
|
||||
end
|
||||
end
|
||||
|
||||
@@ -216,6 +216,21 @@ RSpec.describe 'Conversation Messages API', type: :request do
|
||||
expect(message.reload.deleted).to be true
|
||||
expect(message.reload.content_attributes['bcc_emails']).to be_nil
|
||||
end
|
||||
|
||||
it 'deletes interactive messages' do
|
||||
interactive_message = create(
|
||||
:message, message_type: :outgoing, content: 'test', content_type: 'input_select',
|
||||
content_attributes: { 'items' => [{ 'title' => 'test', 'value' => 'test' }] },
|
||||
conversation: conversation
|
||||
)
|
||||
|
||||
delete "/api/v1/accounts/#{account.id}/conversations/#{conversation.display_id}/messages/#{interactive_message.id}",
|
||||
headers: agent.create_new_auth_token,
|
||||
as: :json
|
||||
|
||||
expect(response).to have_http_status(:success)
|
||||
expect(interactive_message.reload.deleted).to be true
|
||||
end
|
||||
end
|
||||
|
||||
context 'when the message id is invalid' do
|
||||
|
||||
Reference in New Issue
Block a user