discourse/spec/components/imap/imap_helper.rb

29 lines
1.0 KiB
Ruby

# frozen_string_literal: true
class MockedImapProvider < Imap::Providers::Gmail
def connect!; end
def disconnect!; end
def open_mailbox(mailbox_name, write: false); end
def labels
['INBOX']
end
end
def EmailFabricator(options)
email = +''
email += "Date: Sat, 31 Mar 2018 17:50:19 -0700\n"
email += "From: #{options[:from] || "Dan <dan@discourse.org>"}\n"
email += "To: #{options[:to] || "Joffrey <joffrey@discourse.org>"}\n"
email += "Cc: #{options[:cc]}\n" if options[:cc]
email += "In-Reply-To: #{options[:in_reply_to]}\n" if options[:in_reply_to]
email += "References: #{options[:in_reply_to]}\n" if options[:in_reply_to]
email += "Message-ID: <#{options[:message_id]}>\n" if options[:message_id]
email += "Subject: #{options[:subject] || "This is a test email subject"}\n"
email += "Mime-Version: 1.0\n"
email += "Content-Type: #{options[:content_type] || "text/plain;\n charset=UTF-8"}\n"
email += "Content-Transfer-Encoding: 7bit\n"
email += "\n#{options[:body] || "This is an email *body*. :smile:"}"
email
end