def test_get_date_invalid_format(self): # Un missatge amb la data en format "Apple Mail" data = "Date: 9/23/2016 11:04:10 AM\n\n" apple_mail = MailTicket(StringIO(data)) dt = apple_mail.get_date() self.assertEquals("11/09/2015 11:45", dt.strftime("%d/%m/%Y %H:%M"))
class TestMailTicket(unittest.TestCase): def setUp(self): settings.init() data = "From: [email protected]\n" \ "Date: Tue, 28 Sep 2016 10:24:09 +0200 (CEST)\n\n" self.mail = MailTicket(string_to_mail(data)) def test_mails_no_ticket_0001(self): self.mail.mails_no_ticket = ["*****@*****.**"] self.assertFalse(self.mail.cal_tractar()) def test_mails_no_ticket_0002(self): self.mail.mails_no_ticket = ["*****@*****.**"] self.assertTrue(self.mail.cal_tractar()) def test_mails_no_ticket_0003(self): self.mail.mails_no_ticket = [r'^.*@domain\.tld$'] self.assertTrue(self.mail.cal_tractar()) def test_mails_no_ticket_0004(self): self.mail.mails_no_ticket = [r'^.*@example\.com$'] self.assertFalse(self.mail.cal_tractar()) def test_get_date(self): d = self.mail.get_date() self.assertIsInstance(d, datetime.datetime) def test_get_body_buit(self): mail_buit = llegir_mail("mailbuit.txt") body = mail_buit.get_body() self.assertEqual("", body) def test_get_auto_submitted(self): mail_buit = llegir_mail("mailbuit.txt") mail_auto = llegir_mail("mailauto.txt") self.assertTrue(mail_auto.es_missatge_automatic()) self.assertFalse(mail_buit.es_missatge_automatic()) @freeze_time("2015-09-11 09:45", tz_offset=+2) def test_get_date_invalid_format(self): # Un missatge amb la data en format "Apple Mail" data = "Date: 9/23/2016 11:04:10 AM\n\n" apple_mail = MailTicket(string_to_mail(data)) dt = apple_mail.get_date() self.assertEqual("11/09/2015 11:45", dt.strftime("%d/%m/%Y %H:%M")) def test_encoding_xungo(self): mail = llegir_mail("encoding-xungo.txt") body = mail.get_body() self.assertNotEqual("", body) def test_quoted_printable(self): mail = llegir_mail("comentaris.txt") body = mail.get_body() self.assertTrue("títol" in body)
class TestMailTicket(unittest.TestCase): def setUp(self): settings.init() data = "From: [email protected]\n" \ "Date: Tue, 28 Sep 2016 10:24:09 +0200 (CEST)\n\n" self.mail = MailTicket(StringIO(data)) def test_mails_no_ticket_0001(self): self.mail.mails_no_ticket = ["*****@*****.**"] self.assertFalse(self.mail.cal_tractar()) def test_mails_no_ticket_0002(self): self.mail.mails_no_ticket = ["*****@*****.**"] self.assertTrue(self.mail.cal_tractar()) def test_mails_no_ticket_0003(self): self.mail.mails_no_ticket = [r'^.*@domain\.tld$'] self.assertTrue(self.mail.cal_tractar()) def test_mails_no_ticket_0004(self): self.mail.mails_no_ticket = [r'^.*@example\.com$'] self.assertFalse(self.mail.cal_tractar()) def test_get_date(self): d = self.mail.get_date() self.assertIsInstance(d, datetime.datetime) def test_get_body_buit(self): mail_buit = llegir_mail("mailbuit.txt") body = mail_buit.get_body() self.assertEquals("", body) def test_get_auto_submitted(self): mail_buit = llegir_mail("mailbuit.txt") mail_auto = llegir_mail("mailauto.txt") self.assertTrue(mail_auto.es_missatge_automatic()) self.assertFalse(mail_buit.es_missatge_automatic()) @freeze_time("2015-09-11 09:45", tz_offset=+2) def test_get_date_invalid_format(self): # Un missatge amb la data en format "Apple Mail" data = "Date: 9/23/2016 11:04:10 AM\n\n" apple_mail = MailTicket(StringIO(data)) dt = apple_mail.get_date() self.assertEquals("11/09/2015 11:45", dt.strftime("%d/%m/%Y %H:%M")) def test_encoding_xungo(self): mail = llegir_mail("encoding-xungo.txt") body = mail.get_body() self.assertNotEquals("", body)
def setUp(self): settings.init() data = "From: [email protected]\n" \ "Date: Tue, 28 Sep 2016 10:24:09 +0200 (CEST)\n\n" self.mail = MailTicket(StringIO(data))
def llegir_mail(msgfile): fp = open(os.path.dirname(__file__) + "/mails/" + msgfile) mail_ticket = MailTicket(fp) fp.close() return mail_ticket
level=settings.get("log_level"), format='%(asctime)s [%(process)d] %(name)-12s' ' %(levelname)-8s %(message)s') buffer_logs = StringIO() logger.addHandler(logging.StreamHandler(buffer_logs)) if a is not None: logger.info("Fitxer de configuracio [%s]", a) estat = UNKNOWN tractat = False try: logger.info("-----------------------------------------------------") logger.info("Llegeixo mail") mail = MailTicket(sys.stdin.buffer) logger.info("Mail de %s llegit amb ID %s" % (mail.get_from(), mail.get_header('message-id'))) if mail.cal_tractar(): if filtres.aplicar_filtres(mail): tractat = True estat = SUCCESS logger.info("Marco el mail com a tractat") else: estat = REJECT logger.info("Rebutjo el mail per no passar els filtres") else: estat = SKIP logger.info("No cal tractar el mail %s" % mail.get_subject_ascii()) except Exception as e:
format='%(asctime)s [%(process)d] %(name)-12s' ' %(levelname)-8s %(message)s' ) buffer_logs = StringIO() logger.addHandler(logging.StreamHandler(buffer_logs)) if a is not None: logger.info("Fitxer de configuracio [%s]", a) estat = UNKNOWN tractat = False try: logger.info("-----------------------------------------------------") logger.info("Llegeixo mail") mail = MailTicket(sys.stdin) logger.info("Mail de %s llegit amb ID %s" % (mail.get_from(), mail.get_header('message-id'))) if mail.cal_tractar(): if filtres.aplicar_filtres(mail): tractat = True estat = SUCCESS logger.info("Marco el mail com a tractat") else: estat = REJECT logger.info("Rebutjo el mail per no passar els filtres") else: estat = SKIP logger.info("No cal tractar el mail %s" % mail.get_subject_ascii()) except Exception as e: