Sha256: 3b019947d74f67dab76918f3f215da6838f2187605dc41fb7112781a71f3f022
Contents?: true
Size: 675 Bytes
Versions: 3
Compression:
Stored size: 675 Bytes
Contents
require 'mail' class FakeEmailService def initialize fake_domains_file = File.expand_path('../../config/fake_domains.list', __FILE__) @fake_domains = File.readlines(fake_domains_file).map {|fd| fd.strip.downcase } end def is_fake_email?(email) email_address = Mail::Address.new(email) domain = email_address.domain.strip.downcase domain_parts = domain.split('.') second_level_domain = Array(domain_parts[-2..-1]).join('.') third_level_domain = Array(domain_parts[-3..-1]).join('.') domains = [domain, second_level_domain, third_level_domain].compact @fake_domains.any? {|fake_domain| domains.include?(fake_domain) } end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
fake_email_validator-1.0.3 | lib/fake_email_service.rb |
fake_email_validator-1.0.2 | lib/fake_email_service.rb |
fake_email_validator-1.0.1 | lib/fake_email_service.rb |