# 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 "}\n" email += "To: #{options[:to] || "Joffrey "}\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