feat: SLA CRUD APIs (EE) (#7027)

Fixes: https://linear.app/chatwoot/issue/CW-1613/sla-api

Co-authored-by: Sojan Jose <sojan@pepalo.com>
This commit is contained in:
Muhsin Keloth
2023-05-11 22:42:56 +05:30
committed by GitHub
parent c97d6021e0
commit 271263bcc2
19 changed files with 372 additions and 8 deletions

View File

@@ -3,6 +3,24 @@
require 'rails_helper'
RSpec.describe Account do
include ActiveJob::TestHelper
describe 'sla_policies' do
let!(:account) { create(:account) }
let!(:sla_policy) { create(:sla_policy, account: account) }
it 'returns associated sla policies' do
expect(account.sla_policies).to eq([sla_policy])
end
it 'deletes associated sla policies' do
perform_enqueued_jobs do
account.destroy!
end
expect { sla_policy.reload }.to raise_error(ActiveRecord::RecordNotFound)
end
end
describe 'usage_limits' do
before do
create(:installation_config, name: 'ACCOUNT_AGENTS_LIMIT', value: 20)

View File

@@ -0,0 +1,22 @@
require 'rails_helper'
RSpec.describe SlaPolicy, type: :model do
include ActiveJob::TestHelper
let(:account) { create(:account) }
let(:admin) { create(:user, account: account, role: :administrator) }
describe 'validations' do
it { is_expected.to validate_presence_of(:name) }
end
describe 'associations' do
it { is_expected.to belong_to(:account) }
end
describe 'validates_factory' do
it 'creates valid sla policy object' do
sla_policy = create(:sla_policy)
expect(sla_policy.name).to eq 'sla_1'
end
end
end