fix: Wrap references string into array (#7243)

This commit is contained in:
Tejaswini Chile
2023-06-03 07:33:36 +05:30
committed by GitHub
parent ca9d108741
commit 09971fd613
2 changed files with 24 additions and 1 deletions

View File

@@ -54,7 +54,7 @@ class Imap::ImapMailbox
return if @inbound_mail.references.blank?
references = @inbound_mail.references
references = Array.wrap(@inbound_mail.references)
references.each do |message_id|
message = @inbox.messages.find_by(source_id: message_id)

View File

@@ -111,6 +111,29 @@ RSpec.describe Imap::ImapMailbox do
expect(conversation.messages.last.content).to eq('References Email')
expect(references_email.mail.references).to include('test-reference-id')
end
it 'append email to conversation with reference id string' do
inbox = Inbox.last
message = create(
:message,
content: 'Incoming Message',
message_type: 'incoming',
inbox: inbox,
source_id: 'test-reference-id-2',
account: account,
conversation: conversation
)
conversation = message.conversation
expect(conversation.messages.size).to eq(1)
references_email.mail.references = 'test-reference-id-2'
class_instance.process(references_email.mail, inbox.channel)
expect(conversation.messages.size).to eq(2)
expect(conversation.messages.last.content).to eq('References Email')
expect(references_email.mail.references).to include('test-reference-id-2')
end
end
end
end