Fix: added validation for custom and additional attribute (#4260)
This commit is contained in:
@@ -58,6 +58,37 @@ RSpec.describe Conversation, type: :model do
|
||||
end
|
||||
end
|
||||
|
||||
describe '.validate jsonb attributes' do
|
||||
let(:account) { create(:account) }
|
||||
let(:agent) { create(:user, email: 'agent1@example.com', account: account) }
|
||||
let(:inbox) { create(:inbox, account: account) }
|
||||
let(:conversation) do
|
||||
create(
|
||||
:conversation,
|
||||
account: account,
|
||||
contact: create(:contact, account: account),
|
||||
inbox: inbox,
|
||||
assignee: nil
|
||||
)
|
||||
end
|
||||
|
||||
it 'validate length of additional_attributes value' do
|
||||
conversation.additional_attributes = { company_name: 'some_company' * 200, contact_number: 19_999_999_999 }
|
||||
conversation.valid?
|
||||
error_messages = conversation.errors.messages
|
||||
expect(error_messages[:additional_attributes][0]).to eq('company_name length should be < 1500')
|
||||
expect(error_messages[:additional_attributes][1]).to eq('contact_number value should be < 9999999999')
|
||||
end
|
||||
|
||||
it 'validate length of custom_attributes value' do
|
||||
conversation.custom_attributes = { company_name: 'some_company' * 200, contact_number: 19_999_999_999 }
|
||||
conversation.valid?
|
||||
error_messages = conversation.errors.messages
|
||||
expect(error_messages[:custom_attributes][0]).to eq('company_name length should be < 1500')
|
||||
expect(error_messages[:custom_attributes][1]).to eq('contact_number value should be < 9999999999')
|
||||
end
|
||||
end
|
||||
|
||||
describe '.after_update' do
|
||||
let!(:account) { create(:account) }
|
||||
let!(:old_assignee) do
|
||||
|
||||
Reference in New Issue
Block a user