summaryrefslogtreecommitdiff
path: root/service
diff options
context:
space:
mode:
authorFolker Bernitt <fbernitt@thoughtworks.com>2015-07-28 09:20:19 +0200
committerFolker Bernitt <fbernitt@thoughtworks.com>2015-08-11 17:00:28 +0200
commit6450be6dd2eb2d5a683f81657ed197c930fd9784 (patch)
tree98bbb950efb54c748ead78051ddeeaf9340d97fc /service
parent769d20969dda078b01fc82b5ecd27632936dbe4a (diff)
Added actual assert to add_mail mail store test.
Diffstat (limited to 'service')
-rw-r--r--service/pixelated/adapter/mailstore/leap_mailstore.py4
-rw-r--r--service/test/unit/adapter/mailstore/test_leap_mailstore.py19
2 files changed, 18 insertions, 5 deletions
diff --git a/service/pixelated/adapter/mailstore/leap_mailstore.py b/service/pixelated/adapter/mailstore/leap_mailstore.py
index 9b6e0e0d..3c6544df 100644
--- a/service/pixelated/adapter/mailstore/leap_mailstore.py
+++ b/service/pixelated/adapter/mailstore/leap_mailstore.py
@@ -95,10 +95,10 @@ class LeapMailStore(MailStore):
mailbox = yield self._get_or_create_mailbox(mailbox_name)
message = SoledadMailAdaptor().get_msg_from_string(Message, raw_msg)
message.get_wrapper().set_mbox_uuid(mailbox.doc_id)
- message.get_wrapper().create(self.soledad)
+ yield message.get_wrapper().create(self.soledad)
# add behavious from insert_mdoc_id from mail.py
- defer.returnValue(mailbox)
+ defer.returnValue(message)
@defer.inlineCallbacks
def _leap_message_to_leap_mail(self, mail_id, message, include_body):
diff --git a/service/test/unit/adapter/mailstore/test_leap_mailstore.py b/service/test/unit/adapter/mailstore/test_leap_mailstore.py
index 306d0b56..154bc3e0 100644
--- a/service/test/unit/adapter/mailstore/test_leap_mailstore.py
+++ b/service/test/unit/adapter/mailstore/test_leap_mailstore.py
@@ -187,15 +187,25 @@ class TestLeapMailStore(TestCase):
@defer.inlineCallbacks
def test_add_mail(self):
- self._add_create_mail_mocks_to_soledad('mbox00000000')
+ expected_message = self._add_create_mail_mocks_to_soledad('mbox00000000')
mail = self._load_mail_from_file('mbox00000000')
self._mock_get_mailbox('INBOX')
store = LeapMailStore(self.soledad)
- mbx = yield store.add_mail('INBOX', mail.as_string())
+ message = yield store.add_mail('INBOX', mail.as_string())
- self.assertEqual(self.mbox_uuid, mbx.doc_id)
+ self._assert_message_docs_created(expected_message, message)
+
+ def _assert_message_docs_created(self, expected_message, actual_message):
+ expected_wrapper = expected_message.get_wrapper()
+ actual_wrapper = actual_message.get_wrapper()
+
+ verify(self.soledad).create_doc(expected_wrapper.mdoc.serialize(), doc_id=actual_wrapper.mdoc.doc_id)
+ verify(self.soledad).create_doc(expected_wrapper.fdoc.serialize(), doc_id=actual_wrapper.fdoc.doc_id)
+ verify(self.soledad).create_doc(expected_wrapper.hdoc.serialize(), doc_id=actual_wrapper.hdoc.doc_id)
+ for nr, cdoc in expected_wrapper.cdocs.items():
+ verify(self.soledad).create_doc(cdoc.serialize(), doc_id=actual_wrapper.cdocs[nr].doc_id)
def _mock_get_mailbox(self, mailbox_name):
when(self.soledad).list_indexes().thenReturn(defer.succeed(MAIL_INDEXES)).thenReturn(
@@ -236,6 +246,8 @@ class TestLeapMailStore(TestCase):
self._mock_create_doc(hdoc_id, wrapper.hdoc)
self._mock_create_doc(cdoc_id, wrapper.cdocs[1])
+ return msg
+
def _convert_mail_to_leap_message(self, mail):
msg = SoledadMailAdaptor().get_msg_from_string(Message, mail.as_string())
msg.get_wrapper().set_mbox_uuid(self.mbox_uuid)
@@ -254,6 +266,7 @@ class TestLeapMailStore(TestCase):
when(self.soledad).create_doc(doc.serialize(), doc_id=doc_id).thenReturn(defer.succeed(soledad_doc))
else:
when(self.soledad).create_doc(doc.serialize()).thenReturn(defer.succeed(soledad_doc))
+ self.doc_by_id[doc_id] = soledad_doc
def _load_mail_from_file(self, mail_file):
mailset_dir = pkg_resources.resource_filename('test.unit.fixtures', 'mailset')