From bf7b6aa193188c95c50cbc9d24f4be56afa6dc6f Mon Sep 17 00:00:00 2001 From: Duda Dornelles Date: Tue, 12 Aug 2014 16:45:26 -0300 Subject: sending mails in py-fake-service --- py-fake-service/app/adapter/mail_service.py | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) (limited to 'py-fake-service/app/adapter/mail_service.py') diff --git a/py-fake-service/app/adapter/mail_service.py b/py-fake-service/app/adapter/mail_service.py index c6bd3ab4..3d12feb5 100644 --- a/py-fake-service/app/adapter/mail_service.py +++ b/py-fake-service/app/adapter/mail_service.py @@ -4,6 +4,7 @@ import mailbox from tagsset import TagsSet from mailset import MailSet from contacts import Contacts +from mail import Mail class MailService: MAILSET_PATH = os.path.join(os.environ['HOME'], 'mailsets', 'mediumtagged') @@ -28,7 +29,7 @@ class MailService: def mails(self, query, page, window_size): mails = self.mailset.values() mails = [mail for mail in mails if query.test(mail)] - return mails + return sorted(mails, key=lambda mail: mail.date, reverse=True) def mail(self, mail_id): return self.mailset.get(mail_id) @@ -60,7 +61,18 @@ class MailService: mail.tags = new_tags - + def send(self, mail): + mail = Mail.from_json(mail) + self.mailset.update(mail) + self.tagsset.increment_tag_total_count('sent') + self.tagsset.decrement_tag_total_count('drafts') + return mail.ident + + def save_draft(self, mail): + mail = self.mailset.add_draft(Mail.from_json(mail)) + return mail.ident + + -- cgit v1.2.3