diff --git a/spec/services/conversations/assignment_service_spec.rb b/spec/services/conversations/assignment_service_spec.rb index 6377b8fa5..4e2f54f77 100644 --- a/spec/services/conversations/assignment_service_spec.rb +++ b/spec/services/conversations/assignment_service_spec.rb @@ -19,6 +19,14 @@ describe Conversations::AssignmentService do expect(conversation.assignee_id).to be_nil expect(conversation.assignee_agent_bot_id).to be_nil end + + it 'preserves conversation status' do + conversation.update!(status: :snoozed, snoozed_until: 1.day.from_now) + + described_class.new(conversation: conversation, assignee_id: nil).perform + + expect(conversation.reload.status).to eq('snoozed') + end end context 'when assigning a user' do @@ -43,6 +51,14 @@ describe Conversations::AssignmentService do expect(conversation.reload.status).to eq('resolved') end + + it 'preserves status when taking over a bot-owned non-pending conversation' do + conversation.update!(assignee_agent_bot: agent_bot, status: :resolved) + + described_class.new(conversation: conversation, assignee_id: agent.id).perform + + expect(conversation.reload.status).to eq('resolved') + end end context 'when assigning an agent bot' do