class TestMailbox(unittest.TestCase): def setUp(self): self.mbt = MailboxTool() self.log = LogCapture() def zztest_send_get_message(self): site, from_, to, msg, thread_id, msg_id, _, subject, payload, now = get_data() self.mbt.send_message(site, from_, to, msg) raw_msg, msg = self.mbt.get_message(site, from_, 'sent', thread_id, msg_id) self.assertEquals(raw_msg.message_id, msg_id) self.assertEquals(raw_msg.flags, []) self.assertEquals(msg['Message-Id'], msg_id) self.assertEquals(msg['Subject'], subject) self.assertEquals(msg['From'], from_) self.assertEquals(msg['To'], ', '.join(to)) self.assertEquals(msg['Date'], now) self.assertEquals(msg['X-oc-thread-id'], thread_id) transaction.commit() def zztest_delete_message(self): site, from_, to, msg, thread_id, msg_id, _, subject, payload, now = get_data() self.mbt.send_message(site, from_, to, msg) self.mbt.delete_message(site, from_, 'sent', thread_id, msg_id) try: self.mbt.get_message(site, from_, 'sent', thread_id, msg_id) except NoSuchThreadException: pass else: raise transaction.commit() def zztest_set_message_flags(self): site, from_, to, msg, thread_id, msg_id, flags, subject, payload, now = get_data() self.mbt.send_message(site, from_, to, msg) self.mbt.set_message_flags(site, from_, 'sent', thread_id, msg_id, flags) raw_msg, msg = self.mbt.get_message(site, from_, 'sent', thread_id, msg_id) self.assertEquals(raw_msg.flags, flags) raw_msg, msg = self.mbt.get_message(site, from_, 'sent', thread_id, msg_id) transaction.commit() def zztest_get_queues(self): site, from_, to, msg, thread_id, msg_id, _, subject, payload, now = get_data() self.mbt.send_message(site, from_, to, msg) queues = self.mbt.get_queues(site, from_, 'sent') for queue in queues: self.assertTrue(isinstance(queue, Queue)) transaction.commit()
def delete_message(context, request): user = authenticated_userid(request) success = False error_msg = '' thread_id = request.POST.get('thread_id', '') message_id = request.POST.get('message_id', '') mbox_type = _get_mbox_type(request) mbt = MailboxTool() try: mbt.delete_message(context, user, mbox_type, thread_id, message_id) except Exception, e: error_msg = format_exc(e)