module Truemail
Constants
- ArgumentError
- ConfigurationError
- INCOMPLETE_CONFIG
- INVALID_TYPE
- NOT_CONFIGURED
- TypeError
- VERSION
Public Class Methods
configuration(&block)
click to toggle source
# File lib/truemail.rb, line 11 def configuration(&block) @configuration ||= begin return unless block configuration = Truemail::Configuration.new(&block) raise_unless(configuration.complete?, Truemail::INCOMPLETE_CONFIG) configuration end end
configure(&block)
click to toggle source
# File lib/truemail.rb, line 20 def configure(&block) configuration(&block) end
host_audit(custom_configuration: nil)
click to toggle source
# File lib/truemail.rb, line 38 def host_audit(custom_configuration: nil) Truemail::Auditor.new(configuration: determine_configuration(custom_configuration)).run end
reset_configuration!()
click to toggle source
# File lib/truemail.rb, line 24 def reset_configuration! @configuration = nil end
valid?(email, **options)
click to toggle source
# File lib/truemail.rb, line 33 def valid?(email, **options) check_argument_type(email) validate(email, **options).result.valid? end
validate(email, custom_configuration: nil, **options)
click to toggle source
# File lib/truemail.rb, line 28 def validate(email, custom_configuration: nil, **options) check_argument_type(email) Truemail::Validator.new(email, configuration: determine_configuration(custom_configuration), **options).run end
Private Class Methods
check_argument_type(argument)
click to toggle source
# File lib/truemail.rb, line 48 def check_argument_type(argument) raise_unless(argument.is_a?(::String), Truemail::INVALID_TYPE, Truemail::TypeError) end
determine_configuration(custom_configuration)
click to toggle source
# File lib/truemail.rb, line 52 def determine_configuration(custom_configuration) current_configuration = custom_configuration || configuration raise_unless(current_configuration, Truemail::NOT_CONFIGURED) raise_unless(current_configuration.complete?, Truemail::INCOMPLETE_CONFIG) current_configuration.dup.freeze end
raise_unless(condition, message, error_class = Truemail::ConfigurationError)
click to toggle source
# File lib/truemail.rb, line 44 def raise_unless(condition, message, error_class = Truemail::ConfigurationError) raise error_class, message unless condition end