コード例 #1
0
ファイル: mail_stub.py プロジェクト: AppScale/gae_sdk
  def get_sent_messages(self, to=None, sender=None, subject=None, body=None,
                        html=None):
    """Get a list of mail messages sent via the Mail API.

    Args:
      to: A regular expression that at least one recipient must match.
      sender: A regular expression that the sender must match.
      subject: A regular expression that the message subject must match.
      body: A regular expression that the text body must match.
      html: A regular expression that the HTML body must match.

    Returns:
      A list of matching mail.EmailMessage objects.
    """
    messages = self._cached_messages

    def recipient_matches(recipient):
      return re.search(to, recipient)

    if to:
      messages = [m for m in messages if filter(recipient_matches, m.to_list())]
    if sender:
      messages = [m for m in messages if re.search(sender, m.sender())]
    if subject:
      messages = [m for m in messages if re.search(subject, m.subject())]
    if body:
      messages = [m for m in messages if re.search(body, m.textbody())]
    if html:
      messages = [m for m in messages if re.search(html, m.htmlbody())]
    mail_messages = []
    for message in messages:
      mime_message = mail.mail_message_to_mime_message(message)
      email_message = mail.EmailMessage(mime_message=mime_message)
      mail_messages.append(email_message)
    return mail_messages
コード例 #2
0
  def get_sent_messages(self, to=None, sender=None, subject=None, body=None,
                        html=None):
    """Get a list of mail messages sent via the Mail API.

    Args:
      to: A regular expression that at least one recipient must match.
      sender: A regular expression that the sender must match.
      subject: A regular expression that the message subject must match.
      body: A regular expression that the text body must match.
      html: A regular expression that the HTML body must match.

    Returns:
      A list of matching mail.EmailMessage objects.
    """
    messages = self._cached_messages

    def recipient_matches(recipient):
      return re.search(to, recipient)

    if to:
      messages = [m for m in messages if filter(recipient_matches, m.to_list())]
    if sender:
      messages = [m for m in messages if re.search(sender, m.sender())]
    if subject:
      messages = [m for m in messages if re.search(subject, m.subject())]
    if body:
      messages = [m for m in messages if re.search(body, m.textbody())]
    if html:
      messages = [m for m in messages if re.search(html, m.htmlbody())]
    mail_messages = []
    for message in messages:
      mime_message = mail.mail_message_to_mime_message(message)
      email_message = mail.EmailMessage(mime_message=mime_message)
      mail_messages.append(email_message)
    return mail_messages