def test_parse(self): recipient = 'unsubscribe-{}@test.munch.example.com'.format( get_mail_identifier()) unsubscribe = UNSUBSCRIBE_EMAIL.replace('||TO||', recipient) unsubscribe = unsubscribe.replace('||RETURNPATH||', recipient) message = email.message_from_string(unsubscribe) envelope = Envelope() envelope.parse_msg(message) envelope.recipients = [recipient] handler = UnsubscribeHandler(envelope, message) main_headers = dict(handler.message) self.assertEqual(main_headers['To'], recipient)
def test_parse(self): recipient = 'return-{}@test.munch.example.com'.format( get_mail_identifier()) arf = ARF_REPORT.replace('||TO||', recipient) arf = arf.replace('||RETURNPATH||', recipient) message = email.message_from_string(arf) envelope = Envelope() envelope.parse_msg(message) envelope.recipients = [recipient] handler = ARFHandler(envelope, message) main_headers = email.message_from_string(handler.message.as_string()) orig_headers = handler.get_original() report_headers = handler.get_report() self.assertEqual(orig_headers['Return-Path'], recipient) self.assertEqual(report_headers['Feedback-Type'], 'abuse') self.assertEqual(main_headers['Date'], 'Thu, 8 Mar 2005 17:40:36 EDT')
def test_unknown_identifier(self): recipient = 'return-{}@test.munch.example.com'.format( get_base_mail_identifier()) unsubscribe = UNSUBSCRIBE_EMAIL.replace('||TO||', recipient) unsubscribe = unsubscribe.replace('||RETURNPATH||', recipient) message = email.message_from_string(unsubscribe) envelope = Envelope() envelope.parse_msg(message) envelope.recipients = [recipient] handler = UnsubscribeHandler(envelope, message) self.assertIsNone(handler.apply()) recipient = 'return-{}@test.munch.example.com'.format( get_mail_identifier()) unsubscribe = UNSUBSCRIBE_EMAIL.replace('||TO||', recipient) unsubscribe = unsubscribe.replace('||RETURNPATH||', recipient) message = email.message_from_string(unsubscribe) envelope = Envelope() envelope.parse_msg(message) envelope.recipients = [recipient] handler = UnsubscribeHandler(envelope, message) self.assertIsNone(handler.apply())
def test_unknown_identifier(self): recipient = 'return-{}@test.munch.example.com'.format( get_base_mail_identifier()) arf = ARF_REPORT.replace('||TO||', '*****@*****.**') arf = arf.replace('||RETURNPATH||', recipient) message = email.message_from_string(arf) envelope = Envelope() envelope.parse_msg(message) envelope.recipients = [recipient] handler = ARFHandler(envelope, message) self.assertIsNone(handler.apply()) recipient = 'return-{}@test.munch.example.com'.format( get_mail_identifier()) arf = ARF_REPORT.replace('||TO||', '*****@*****.**') arf = arf.replace('||RETURNPATH||', recipient) message = email.message_from_string(arf) envelope = Envelope() envelope.parse_msg(message) envelope.recipients = [recipient] handler = ARFHandler(envelope, message) self.assertIsNone(handler.apply())
def test_unknown_identifier(self): recipient = 'return-{}@test.munch.example.com'.format( get_base_mail_identifier()) dsn = DSN_REPORT.replace('||TO||', recipient) dsn = dsn.replace('||RETURNPATH||', 'foo@bar') message = email.message_from_string(dsn) envelope = Envelope() envelope.parse_msg(message) envelope.recipients = [recipient] handler = DSNHandler(envelope, message) self.assertIsNone(handler.apply()) recipient = 'return-{}@test.munch.example.com'.format( get_mail_identifier()) dsn = DSN_REPORT.replace('||TO||', recipient) dsn = dsn.replace('||RETURNPATH||', 'foo@bar') message = email.message_from_string(dsn) envelope = Envelope() envelope.parse_msg(message) envelope.recipients = [recipient] handler = DSNHandler(envelope, message) self.assertIsNone(handler.apply())
def test_parse(self): recipient = 'return-{}@test.munch.example.com'.format( get_mail_identifier()) dsn = DSN_REPORT.replace('||TO||', recipient) dsn = dsn.replace('||RETURNPATH||', recipient) message = email.message_from_string(dsn) envelope = Envelope() envelope.parse_msg(message) envelope.recipients = [recipient] handler = DSNHandler(envelope, message) main_headers = email.message_from_string(handler.message.as_string()) report_headers = handler.get_report() self.assertEqual(main_headers['To'], recipient) self.assertEqual( report_headers['Arrival-Date'], 'Mon, 1 Sep 2014 17:36:45 +0000 (UTC)') self.assertEqual(report_headers['Diagnostic-Code'], 'smtp; 250 OK') self.assertEqual(report_headers['Status'], '2.0.0') self.assertEqual(report_headers['Action'], 'relayed')