module Postmortem

HTML email inspection tool.

Constants

VERSION

Attributes

config[R]

Public Class Methods

clear_inbox() click to toggle source
# File lib/postmortem.rb, line 53
def clear_inbox
  config.preview_directory.rmtree
end
configure() { |config| ... } click to toggle source
# File lib/postmortem.rb, line 48
def configure
  @config = Configuration.new
  yield @config if block_given?
end
record_delivery(mail) click to toggle source
# File lib/postmortem.rb, line 33
def record_delivery(mail)
  Delivery.new(mail)
          .tap(&:record)
          .tap { |delivery| log_delivery(delivery) }
end
root() click to toggle source
# File lib/postmortem.rb, line 29
def root
  Pathname.new(__dir__).parent
end
try_load(*args, plugin:) click to toggle source
# File lib/postmortem.rb, line 39
def try_load(*args, plugin:)
  args.each { |arg| require arg }
rescue LoadError
  false
else
  require "postmortem/plugins/#{plugin}"
  true
end

Private Class Methods

colorized(val) click to toggle source
# File lib/postmortem.rb, line 64
def colorized(val)
  return val unless output_file.tty? || !config.colorize

  "\e[34m[postmortem]\e[36m #{val}\e[0m"
end
log_delivery(delivery) click to toggle source
# File lib/postmortem.rb, line 59
def log_delivery(delivery)
  output_file.write("#{colorized(delivery.uri)}\n")
  output_file.flush
end
output_file() click to toggle source
# File lib/postmortem.rb, line 70
def output_file
  return $stdout if config.log_path.nil?

  @output_file ||= File.open(config.log_path, mode: 'a')
end