示例#1
0
    def test_decode_header(self):
        fLOG(
            __file__,
            self._testMethodName,
            OutputPrint=__name__ == "__main__")

        name = "=?iso-8859-1?Q?Dupr=E9_Xavier?= <*****@*****.**>"
        res = EmailMessage.call_decode_header(name)
        self.assertEqual(res[0], "Dupré Xavier")
        res = EmailMessage.call_decode_header(name, is_email=True)
        self.assertEqual(res[0], "Dupré Xavier <*****@*****.**>")
示例#2
0
    def test_box_mock(self):
        fLOG(
            __file__,
            self._testMethodName,
            OutputPrint=__name__ == "__main__")
        data = os.path.abspath(os.path.join(os.path.dirname(__file__), "data"))

        box = MailBoxMock(data, b"unittestunittest", fLOG)
        box.login()
        folders = box.folders()
        assert len(folders) == 1
        fLOG(folders)
        mails = list(box.enumerate_mails_in_folder("trav"))
        box.logout()

        fLOG(len(mails))
        assert len(mails) > 0
        mail0 = mails[0]
        # fLOG(mail0)

        bin = mail0.as_bytes()
        ema = EmailMessage.create_from_bytes(bin)
        d0 = mail0.to_dict()
        d1 = ema.to_dict()
        self.assertEqual(d0["Subject"], d1["Subject"])

        render = EmailMessageRenderer()
        html, css = render.render(
            "__LOC__", mail0, file_css="example_css.css", attachments=None)
        assert "example_css.css" in html
        # fLOG(css)
        fLOG(html)
        assert "<tr><th>Date</th><td>Sat, 1 Aug 2015 11:40:50 +0200 (CEST)</td></tr>" in html
示例#3
0
 def test_metadata(self):
     fLOG(
         __file__,
         self._testMethodName,
         OutputPrint=__name__ == "__main__")
     data = os.path.abspath(os.path.join(os.path.dirname(__file__), "data"))
     meta = os.path.join(data, "e.ipynb.metadata")
     d2 = EmailMessage.read_metadata(meta)
     fLOG(d2)
     fLOG(type(d2))
     self.assertIsInstance(d2, OrderedDict)
示例#4
0
    def test_default_filename(self):
        fLOG(
            __file__,
            self._testMethodName,
            OutputPrint=__name__ == "__main__")

        name = "d_2015-08-01_p_noreply-at-voyages-sncf-com_ii_52df24c718fdf138f997e73c383798eb.html"
        res = EmailMessage.interpret_default_filename(name)
        self.assertIsInstance(res, dict)
        self.assertEqual(len(res), 4)
        self.assertEqual(res["date"], "2015-08-01")
示例#5
0
    def test_decode_header(self):
        fLOG(
            __file__,
            self._testMethodName,
            OutputPrint=__name__ == "__main__")

        st = '"dupre [MailContact]" <*****@*****.**>,  	=?iso-8859-1?Q?Emmanuel_Gu=E9rin?= <*****@*****.**>'
        res, enc = EmailMessage.call_decode_header(st)
        fLOG("***", enc)
        fLOG("***", res)
        self.assertEqual(enc, "iso-8859-1")
        assert res.startswith('"dupre [MailContact]" <*****@*****.**>')