feat: add activity message for SLA (#9100)

* feat: add activity message for SLA

* chore: refactor to reduce method complexity

* chore: refactor

* feat: add spec for SLAactivity message

* chore: move SLA spec to enterprise folder

* chore: move team activity methods to a separate module

* chore: fix typo

* chore: move sla activity message spec to conversation model
This commit is contained in:
Vishnu Narayanan
2024-03-13 20:05:34 +05:30
committed by GitHub
parent 804a42c271
commit 7f4b2d66d4
6 changed files with 153 additions and 45 deletions

View File

@@ -5,6 +5,36 @@ RSpec.describe Conversation, type: :model do
it { is_expected.to belong_to(:sla_policy).optional }
end
describe 'SLA policy updates' do
let!(:conversation) { create(:conversation) }
let!(:sla_policy) { create(:sla_policy) }
it 'generates an activity message when the SLA policy is updated' do
conversation.update(sla_policy_id: sla_policy.id)
perform_enqueued_jobs
activity_message = conversation.messages.where(message_type: 'activity').last
expect(activity_message).not_to be_nil
expect(activity_message.message_type).to eq('activity')
expect(activity_message.content).to include('added SLA policy')
end
it 'generates an activity message when the SLA policy is removed' do
conversation.update(sla_policy_id: sla_policy.id)
conversation.update(sla_policy_id: nil)
perform_enqueued_jobs
activity_message = conversation.messages.where(message_type: 'activity').last
expect(activity_message).not_to be_nil
expect(activity_message.message_type).to eq('activity')
expect(activity_message.content).to include('removed SLA policy')
end
end
describe 'conversation sentiments' do
include ActiveJob::TestHelper