2019-12-24 07:57:25 +00:00
|
|
|
# frozen_string_literal: true
|
|
|
|
|
|
|
|
FactoryBot.define do
|
|
|
|
factory :contact_inbox do
|
|
|
|
contact
|
|
|
|
inbox
|
2021-02-03 13:54:51 +00:00
|
|
|
|
|
|
|
after(:build) { |contact_inbox| contact_inbox.source_id ||= generate_source_id(contact_inbox) }
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
def generate_source_id(contact_inbox)
|
|
|
|
case contact_inbox.inbox.channel_type
|
|
|
|
when 'Channel::TwilioSms'
|
|
|
|
contact_inbox.inbox.channel.medium == 'sms' ? Faker::PhoneNumber.cell_phone_in_e164 : "whatsapp:#{Faker::PhoneNumber.cell_phone_in_e164}"
|
|
|
|
when 'Channel::Email'
|
|
|
|
"#{SecureRandom.uuid}@acme.inc"
|
2022-09-29 17:34:55 +00:00
|
|
|
when 'Channel::Whatsapp'
|
|
|
|
Faker::PhoneNumber.cell_phone_in_e164.delete('+')
|
2021-02-03 13:54:51 +00:00
|
|
|
else
|
|
|
|
SecureRandom.uuid
|
2019-12-24 07:57:25 +00:00
|
|
|
end
|
|
|
|
end
|