From 4b748e2c8c6c5fdf83d6db9c2267bbf24b585913 Mon Sep 17 00:00:00 2001 From: Pranav Raj S Date: Tue, 15 Mar 2022 22:01:16 +0530 Subject: [PATCH] fix: Delete content_attributes in message destroy API (#4184) --- .../api/v1/accounts/conversations/messages_controller.rb | 2 +- .../api/v1/accounts/conversations/messages_controller_spec.rb | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/app/controllers/api/v1/accounts/conversations/messages_controller.rb b/app/controllers/api/v1/accounts/conversations/messages_controller.rb index ffd00461b..77a3a7081 100644 --- a/app/controllers/api/v1/accounts/conversations/messages_controller.rb +++ b/app/controllers/api/v1/accounts/conversations/messages_controller.rb @@ -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'), deleted: true) + message.update!(content: I18n.t('conversations.messages.deleted'), content_attributes: { deleted: true }) message.attachments.destroy_all end end diff --git a/spec/controllers/api/v1/accounts/conversations/messages_controller_spec.rb b/spec/controllers/api/v1/accounts/conversations/messages_controller_spec.rb index 637b36192..d97645416 100644 --- a/spec/controllers/api/v1/accounts/conversations/messages_controller_spec.rb +++ b/spec/controllers/api/v1/accounts/conversations/messages_controller_spec.rb @@ -163,7 +163,7 @@ RSpec.describe 'Conversation Messages API', type: :request do end describe 'DELETE /api/v1/accounts/{account.id}/conversations/:conversation_id/messages/:id' do - let(:message) { create(:message, account: account) } + let(:message) { create(:message, account: account, content_attributes: { bcc_emails: ['hello@chatwoot.com'] }) } let(:conversation) { message.conversation } context 'when it is an unauthenticated user' do @@ -188,6 +188,7 @@ RSpec.describe 'Conversation Messages API', type: :request do expect(response).to have_http_status(:success) expect(message.reload.content).to eq 'This message was deleted' expect(message.reload.deleted).to eq true + expect(message.reload.content_attributes['bcc_emails']).to eq nil end end