Module: Truemail

Defined in:
lib/truemail.rb,
lib/truemail/core.rb,
lib/truemail/worker.rb,
lib/truemail/auditor.rb,
lib/truemail/version.rb,
lib/truemail/wrapper.rb,
lib/truemail/audit/ptr.rb,
lib/truemail/validator.rb,
lib/truemail/audit/base.rb,
lib/truemail/validate/mx.rb,
lib/truemail/configuration.rb,
lib/truemail/validate/base.rb,
lib/truemail/validate/smtp.rb,
lib/truemail/validate/regex.rb,
lib/truemail/validate/smtp/request.rb,
lib/truemail/validate/smtp/response.rb

Defined Under Namespace

Modules: Audit, RegexConstant, Validate Classes: ArgumentError, Auditor, Configuration, ConfigurationError, Validator, Worker, Wrapper

Constant Summary collapse

INCOMPLETE_CONFIG =
'verifier_email is required parameter'
NOT_CONFIGURED =
'use Truemail.configure before'
VERSION =
'0.1.9'

Class Method Summary collapse

Class Method Details

.configurationObject



10
11
12
13
14
15
16
17
18
# File 'lib/truemail.rb', line 10

def configuration
  @configuration ||= begin
    return unless block_given?
    configuration = Truemail::Configuration.new
    yield(configuration)
    raise_unless(configuration.complete?, INCOMPLETE_CONFIG)
    configuration
  end
end

.configure(&block) ⇒ Object



20
21
22
# File 'lib/truemail.rb', line 20

def configure(&block)
  configuration(&block)
end

.host_auditObject



37
38
39
40
# File 'lib/truemail.rb', line 37

def host_audit
  raise_unless(configuration, NOT_CONFIGURED)
  Truemail::Auditor.run
end

.reset_configuration!Object



24
25
26
# File 'lib/truemail.rb', line 24

def reset_configuration!
  @configuration = nil
end

.valid?(email, **options) ⇒ Boolean

Returns:

  • (Boolean)


33
34
35
# File 'lib/truemail.rb', line 33

def valid?(email, **options)
  validate(email, **options).result.valid?
end

.validate(email, **options) ⇒ Object



28
29
30
31
# File 'lib/truemail.rb', line 28

def validate(email, **options)
  raise_unless(configuration, NOT_CONFIGURED)
  Truemail::Validator.new(email, **options).run
end