Chore: Increase test coverage for widget messages (#472)

This commit is contained in:
Tim Lange
2020-02-06 20:21:47 +01:00
committed by GitHub
parent 7b1fdc5fcd
commit 3fa7c605c3

View File

@@ -33,7 +33,8 @@ RSpec.describe '/api/v1/widget/messages', type: :request do
describe 'POST /api/v1/widget/messages' do
context 'when post request is made' do
it 'creates message in conversation' do
message_params = { content: 'hello world' }
conversation.destroy # Test all params
message_params = { content: 'hello world', timestamp: Time.current }
post api_v1_widget_messages_url,
params: { website_token: web_widget.website_token, message: message_params },
headers: { 'X-Auth-Token' => token },
@@ -64,6 +65,19 @@ RSpec.describe '/api/v1/widget/messages', type: :request do
end
end
context 'when put request is made with invalid email' do
it 'rescues the error' do
message = create(:message, account: account, inbox: web_widget.inbox, conversation: conversation)
contact_params = { email: nil }
put api_v1_widget_message_url(message.id),
params: { website_token: web_widget.website_token, contact: contact_params },
headers: { 'X-Auth-Token' => token },
as: :json
expect(response).to have_http_status(:internal_server_error)
end
end
context 'when put request is made with existing email' do
it 'updates message in conversation and deletes the current contact' do
message = create(:message, account: account, inbox: web_widget.inbox, conversation: conversation)