fix email validate

pull/381/head
Pete Matsyburka 1 year ago
parent 72bbdb38bf
commit 558a14a5f2

@ -70,8 +70,10 @@ module Params
def email_format(params, key, message: nil)
return if params.blank?
return if params[key].blank?
return if params[key].to_s.include?('<')
if params[key].to_s.strip.split(/\s*[;,]\s*/).all? { |email| EmailTypo::DotCom.call(email).match?(EMAIL_REGEXP) }
if params[key].to_s.strip.split(/\s*[;,]\s*/).compact_blank
.all? { |email| EmailTypo::DotCom.call(email).match?(EMAIL_REGEXP) }
return
end

@ -10,6 +10,7 @@ RSpec.describe Params::BaseValidator do
emails = [
' john.doe@example.com ',
'john.doe@example.com',
'Test <john.doe@example.com>',
'jane+newsletter@domain.org',
'mike_smith@company.net',
'lisa-wong@sub.example.co.uk',
@ -49,7 +50,6 @@ RSpec.describe Params::BaseValidator do
it 'when multiple emails are valid' do
emails = [
'john.doe@example.com, jane.doe+newsletter@domain.org',
'joshua@automobile.car ; chloe+fashion@food.delivery',
'mike-smith@company.net;lisa.wong-sales@sub.example.co.uk',
@ -78,9 +78,7 @@ RSpec.describe Params::BaseValidator do
it 'when multiple emails are invalid' do
emails = [
'jone@gmail.com, ,mike@gmail.com',
'john.doe@example.com dave@nonprofit.org',
'; oliver.scott@example.com',
'amy.baker@ example.com, george.morris@ example.com',
'jenny.king@example.com . diana.robinson@example.com',
'nancy.davis@.com, henry.ford@.com',

Loading…
Cancel
Save