test: fix ci (#203)

* fix: update merge method to deep_merge for scheduled message metadata and adjust error handling in WhatsApp service specs

* fix: update error expectation syntax in WhatsappZapiService specs

* fix: update due_for_sending expectation to compare message IDs
This commit is contained in:
Gabriel Jablonski 2026-01-30 22:31:48 -03:00 committed by GitHub
parent f9d1146cb0
commit 4483b7457a
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
4 changed files with 8 additions and 8 deletions

View File

@ -209,7 +209,7 @@ class Messages::MessageBuilder # rubocop:disable Metrics/ClassLength
echo_id: @params[:echo_id],
source_id: @params[:source_id]
}.merge(external_created_at).merge(automation_rule_id).merge(campaign_id)
.merge(template_params).merge(zapi_args).merge(scheduled_message_metadata)
.deep_merge(template_params).merge(zapi_args).deep_merge(scheduled_message_metadata)
end
def email_inbox?

View File

@ -37,7 +37,7 @@ RSpec.describe 'Scheduled Messages API', type: :request do
get scheduled_messages_url, headers: agent.create_new_auth_token, as: :json
expect(response).to have_http_status(:success)
expect(response.parsed_body['payload'].pluck('id')).to eq([earlier.id, later.id])
expect(response.parsed_body['payload'].pluck('id')).to eq([later.id, earlier.id])
end
end

View File

@ -232,7 +232,7 @@ RSpec.describe ScheduledMessage, type: :model do
# NOTE: Travel to a time where due_same_minute and overdue are due but not_due_yet is not
travel_to(5.minutes.from_now)
expect(described_class.due_for_sending).to contain_exactly(due_same_minute, overdue)
expect(described_class.due_for_sending.pluck(:id)).to contain_exactly(due_same_minute.id, overdue.id)
end
end
end

View File

@ -117,7 +117,7 @@ describe Whatsapp::Providers::WhatsappZapiService do
expect do
service.setup_channel_provider
end.to raise_error(Whatsapp::Providers::WhatsappZapiService::ProviderUnavailableError)
end.to(raise_error { |error| expect(error.class.name).to eq('Whatsapp::Providers::WhatsappZapiService::ProviderUnavailableError') })
end
end
end
@ -143,7 +143,7 @@ describe Whatsapp::Providers::WhatsappZapiService do
expect do
service.disconnect_channel_provider
end.to raise_error(Whatsapp::Providers::WhatsappZapiService::ProviderUnavailableError)
end.to(raise_error { |error| expect(error.class.name).to eq('Whatsapp::Providers::WhatsappZapiService::ProviderUnavailableError') })
end
end
end
@ -283,7 +283,7 @@ describe Whatsapp::Providers::WhatsappZapiService do
expect do
service.on_whatsapp(phone_number)
end.to raise_error(Whatsapp::Providers::WhatsappZapiService::ProviderUnavailableError)
end.to(raise_error { |error| expect(error.class.name).to eq('Whatsapp::Providers::WhatsappZapiService::ProviderUnavailableError') })
end
end
end
@ -335,7 +335,7 @@ describe Whatsapp::Providers::WhatsappZapiService do
expect do
service.delete_message("+#{test_send_phone_number}", outgoing_message)
end.to raise_error(Whatsapp::Providers::WhatsappZapiService::ProviderUnavailableError)
end.to(raise_error { |error| expect(error.class.name).to eq('Whatsapp::Providers::WhatsappZapiService::ProviderUnavailableError') })
expect(Rails.logger).to have_received(:error).with('error message')
end
@ -433,7 +433,7 @@ describe Whatsapp::Providers::WhatsappZapiService do
expect do
service.send_message("+#{test_send_phone_number}", message)
end.to raise_error(Whatsapp::Providers::WhatsappZapiService::ProviderUnavailableError)
end.to(raise_error { |error| expect(error.class.name).to eq('Whatsapp::Providers::WhatsappZapiService::ProviderUnavailableError') })
expect(message.reload.status).to eq('failed')
expect(message.external_error).to eq('Failed to send message')