def get_collection(self, mbox_collection=True, mbox_name=None, mbox_uuid=None): """ Get a collection for tests. """ adaptor = SoledadMailAdaptor() store = self._soledad adaptor.store = store if mbox_collection: mbox_indexer = MailboxIndexer(store) mbox_name = mbox_name or "TestMbox" mbox_uuid = mbox_uuid or str(uuid.uuid4()) else: mbox_indexer = mbox_name = None def get_collection_from_mbox_wrapper(wrapper): wrapper.uuid = mbox_uuid return MessageCollection( adaptor, store, mbox_indexer=mbox_indexer, mbox_wrapper=wrapper) d = adaptor.initialize_store(store) if mbox_collection: d.addCallback(lambda _: mbox_indexer.create_table(mbox_uuid)) d.addCallback(lambda _: adaptor.get_or_create_mbox(store, mbox_name)) d.addCallback(get_collection_from_mbox_wrapper) return d
class SoledadTestBase(unittest.TestCase, AppTestClient): # these are so long because our CI is so slow at the moment. DEFERRED_TIMEOUT = 120 DEFERRED_TIMEOUT_LONG = 300 @defer.inlineCallbacks def setUp(self): set_events_enabled(False) super(SoledadTestBase, self).setUp() self.adaptor = SoledadMailAdaptor() self.mbox_uuid = str(uuid4()) yield self.start_client() def tearDown(self): set_events_enabled(True) self.cleanup() @defer.inlineCallbacks def _create_mail_in_soledad(self, mail): yield self.adaptor.initialize_store(self.soledad) mbox = yield self.adaptor.get_or_create_mbox(self.soledad, 'INBOX') message = self._convert_mail_to_leap_message(mail, mbox.uuid) yield self.adaptor.create_msg(self.soledad, message) defer.returnValue(message.get_wrapper().mdoc.doc_id) def _convert_mail_to_leap_message(self, mail, mbox_uuid): message = self.adaptor.get_msg_from_string(Message, mail.as_string()) message.get_wrapper().set_mbox_uuid(mbox_uuid) return message
class SoledadTestBase(unittest.TestCase, AppTestClient): # these are so long because our CI is so slow at the moment. DEFERRED_TIMEOUT = 120 DEFERRED_TIMEOUT_LONG = 300 @defer.inlineCallbacks def setUp(self): set_events_enabled(False) super(SoledadTestBase, self).setUp() self.adaptor = SoledadMailAdaptor() self.mbox_uuid = str(uuid4()) yield self.start_client() def tearDown(self): set_events_enabled(True) self.cleanup() @defer.inlineCallbacks def _create_mail_in_soledad(self, mail): yield self.adaptor.initialize_store(self.soledad) mbox = yield self.adaptor.get_or_create_mbox(self.soledad, "INBOX") message = self._convert_mail_to_leap_message(mail, mbox.uuid) yield self.adaptor.create_msg(self.soledad, message) defer.returnValue(message.get_wrapper().mdoc.doc_id) def _convert_mail_to_leap_message(self, mail, mbox_uuid): message = self.adaptor.get_msg_from_string(Message, mail.as_string()) message.get_wrapper().set_mbox_uuid(mbox_uuid) return message