def setUp(self): super(FlaggingBouncedMailWriteItDefault, self).setUp() self.message = Message.objects.get(id=1) self.contact = Contact.objects.get( value="*****@*****.**") self.outbound_message = OutboundMessage.objects.create( message=self.message, contact=self.contact, site=Site.objects.get_current()) identifier = OutboundMessageIdentifier.objects.get( outbound_message=self.outbound_message) identifier.key = "4aaaabbb" identifier.save() self.bounced_email = "" with open('mailit/tests/fixture/bounced_mail2.txt') as f: self.bounced_email += f.read() f.close() self.handler = EmailHandler(answer_class=OutboundMessageAnswer) self.answer = self.handler.handle(self.bounced_email) self.answer.send_back()
def handle(self, *args, **options): lines = sys.stdin.readlines() if settings.INCOMING_EMAIL_LOGGING == 'ALL': if not settings.ADMINS: return text_content = "New incomming email" subject = "New incomming email" mail = EmailMultiAlternatives( '%s%s' % (settings.EMAIL_SUBJECT_PREFIX, subject), text_content, # content settings.DEFAULT_FROM_EMAIL, # From [a[1] for a in settings.ADMINS] # To ) mail.attach('mail.txt', ''.join(lines), 'text/plain') mail.send() handler = EmailHandler(answer_class=AnswerForManageCommand) try: answer = handler.handle(lines) answer.send_back() except CouldNotFindIdentifier: pass except TemporaryFailure: pass except: tb = traceback.format_exc() text_content = "Error the traceback was:\n" + tb #mail_admins('Error handling incoming email', html_message, html_message=html_message) subject = "Error handling incoming email" mail = EmailMultiAlternatives( '%s%s' % (settings.EMAIL_SUBJECT_PREFIX, subject), text_content, # content settings.DEFAULT_FROM_EMAIL, # From [a[1] for a in settings.ADMINS], # To ) mail.attach('mail.txt', ''.join(lines), 'text/plain') mail.send()
def test_temporary_failure_raises_temp_fail_error(self): handler = EmailHandler(answer_class=AnswerForManageCommand) with self.assertRaises(TemporaryFailure): handler.handle(temporary_fail_mock())
def test_temporary_failure_raises_temp_fail_error(self): handler = EmailHandler(answer_class=OutboundMessageAnswer) with self.assertRaises(TemporaryFailure): handler.handle(temporary_fail_mock())