From 37781b4dccadb2e10589d814cd748ee6d83de9ab Mon Sep 17 00:00:00 2001 From: Victor Shyba Date: Sun, 22 Mar 2015 00:54:02 -0300 Subject: extracts get_lastuid and adds tests for create_mail uid consistency. -- Issue #334 --- service/pixelated/adapter/soledad/soledad_facade_mixin.py | 3 +++ service/pixelated/adapter/soledad/soledad_writer_mixin.py | 8 ++++---- 2 files changed, 7 insertions(+), 4 deletions(-) (limited to 'service/pixelated/adapter') diff --git a/service/pixelated/adapter/soledad/soledad_facade_mixin.py b/service/pixelated/adapter/soledad/soledad_facade_mixin.py index 2dad78b8..280fc81e 100644 --- a/service/pixelated/adapter/soledad/soledad_facade_mixin.py +++ b/service/pixelated/adapter/soledad/soledad_facade_mixin.py @@ -59,5 +59,8 @@ class SoledadDbFacadeMixin(object): def get_mbox(self, mbox): return self.soledad.get_from_index('by-type-and-mbox', 'mbox', mbox) if mbox else [] + def get_lastuid(self, mbox_doc): + return mbox_doc.content['lastuid'] + def get_search_index_masterkey(self): return self.soledad.get_from_index('by-type', 'index_key') diff --git a/service/pixelated/adapter/soledad/soledad_writer_mixin.py b/service/pixelated/adapter/soledad/soledad_writer_mixin.py index c95c7b57..9c5eb47a 100644 --- a/service/pixelated/adapter/soledad/soledad_writer_mixin.py +++ b/service/pixelated/adapter/soledad/soledad_writer_mixin.py @@ -31,13 +31,13 @@ class SoledadWriterMixin(SoledadDbFacadeMixin, object): self.put_doc(mail.fdoc) def create_mail(self, mail, mailbox_name): - mbox = self.get_mbox(mailbox_name)[0] - uid = mbox.content['lastuid'] + 1 + mbox_doc = self.get_mbox(mailbox_name)[0] + uid = self.get_lastuid(mbox_doc) [self.create_doc(doc) for doc in mail.get_for_save(next_uid=uid, mailbox=mailbox_name)] - mbox.content['lastuid'] = uid - self.put_doc(mbox) + mbox_doc.content['lastuid'] = uid + 1 + self.put_doc(mbox_doc) return self.mail(mail.ident) -- cgit v1.2.3