Class: EmailInterceptor
- Inherits:
-
Object
- Object
- EmailInterceptor
- Defined in:
- lib/email_interceptor.rb,
lib/email_interceptor/version.rb
Constant Summary collapse
- VERSION =
"0.0.1"
Instance Method Summary collapse
- #delivering_email(message) ⇒ Object
-
#initialize(strategy, opts = {}) ⇒ EmailInterceptor
constructor
A new instance of EmailInterceptor.
- #log_delivery(message) ⇒ Object
- #override_mail_to(message) ⇒ Object
Constructor Details
#initialize(strategy, opts = {}) ⇒ EmailInterceptor
Returns a new instance of EmailInterceptor.
5 6 7 8 9 10 11 |
# File 'lib/email_interceptor.rb', line 5 def initialize(strategy, opts={}) strategies = [:live, :internal_only, :fake] @strategy = strategies.include?(strategy) ? strategy : :fake @fake_email_address = opts[:fake_email_address] || '[email protected]' @internal_recipient_matcher = opts[:internal_recipient_matcher] @logger_file = opts[:logger_file] end |
Instance Method Details
#delivering_email(message) ⇒ Object
13 14 15 16 |
# File 'lib/email_interceptor.rb', line 13 def delivering_email() override_mail_to() log_delivery() end |
#log_delivery(message) ⇒ Object
24 25 26 27 28 29 |
# File 'lib/email_interceptor.rb', line 24 def log_delivery() return unless @logger_file File.open(@logger_file, 'a') do |f| f.puts "#{Time.now}\n#{message}" end end |
#override_mail_to(message) ⇒ Object
18 19 20 21 22 |
# File 'lib/email_interceptor.rb', line 18 def override_mail_to() unless @strategy == :live .to = .to.map { |t| override_single_recipient(t) } end end |