예제 #1
0
class TestEmail:
    e = email(
        subject='hi',
        sender='name <*****@*****.**>',
        receivers=['*****@*****.**'],
        cc=['*****@*****.**'],
        bcc=['*****@*****.**'],
        content='hi!',
        attachments=['tests/assets/spacer.gif'],
    )

    def test_attrs(self):
        assert self.e.sender == '*****@*****.**'
        assert set(self.e.receivers) == set([
            '*****@*****.**',
            '*****@*****.**',
            '*****@*****.**',
            ])

    def test_headers(self):
        mime = mimetest(self.e.mime())
        assert not mime['Bcc']

    def test_content(self):
        mime = mimetest(self.e.mime())
        assert [k.payload for k in mime.parts] == [
            b'hi!',
            open('tests/assets/spacer.gif', 'rb').read()
            ]
예제 #2
0
 def mime(self):
     envelope = email(
         sender='Me <*****@*****.**>',
         receivers=['*****@*****.**'],
         subject='Something',
         content='<p>hi</p>',
         attachments=['tests/assets/spacer.gif'],
         cc=['*****@*****.**', '*****@*****.**'],
         bcc=['*****@*****.**', '*****@*****.**'],
         encoding='ascii',
     )
     return mimetest(envelope.mime())
예제 #3
0
 def mime(self):
     envelope = email(
         sender="Me <*****@*****.**>",
         receivers=["*****@*****.**"],
         subject="Something",
         content="<p>hi</p>",
         attachments=["tests/assets/spacer.gif"],
         cc=["*****@*****.**", "*****@*****.**"],
         bcc=["*****@*****.**", "*****@*****.**"],
         encoding="ascii",
     )
     return mimetest(envelope.mime())
예제 #4
0
 def mime(self):
     envelope = email(
         sender='Me <*****@*****.**>',
         receivers=['*****@*****.**'],
         subject='Something',
         content='<p>hi</p>',
         attachments=['tests/assets/spacer.gif'],
         cc=['*****@*****.**', '*****@*****.**'],
         bcc=['*****@*****.**', '*****@*****.**'],
         encoding='ascii',
     )
     return mimetest(envelope.mime())
예제 #5
0
    def test_send_email_example(self, smtpserver):
        p = Postman(*smtpserver.addr)

        r = p.send(email(
            content='<p>Hello 世界</p>',
            subject='Hello world',
            sender='John <*****@*****.**>',
            receivers=['*****@*****.**'],
        ))

        assert r.ok
        assert len(smtpserver.outbox) == 1
예제 #6
0
    def test_send_email_example(self, smtpserver):
        p = Postman(*smtpserver.addr)

        r = p.send(
            email(
                content='<p>Hello 世界</p>',
                subject='Hello world',
                sender='John <*****@*****.**>',
                receivers=['*****@*****.**'],
            ))

        assert r.ok
        assert len(smtpserver.outbox) == 1
예제 #7
0
    def test_send_email_attachment(self, smtpserver):
        p = Postman(*smtpserver.addr)

        r = p.send(email(
            sender='Me <*****@*****.**>',
            receivers=['*****@*****.**'],
            subject='Something',
            content='<p>hi</p>',
            attachments=['tests/assets/spacer.gif'],
            cc=['*****@*****.**', '*****@*****.**'],
            bcc=['*****@*****.**', '*****@*****.**'],
            encoding='ascii',
        ))

        assert r.ok
        assert len(smtpserver.outbox) == 1

        message = smtpserver.outbox[0]
        assert message['Content-Type'].startswith('multipart/mixed')
        assert message['Subject'] == 'Something'
        assert message['To'] == '*****@*****.**'
        assert message['CC'] == '[email protected], [email protected]'
        assert message['From'] == 'Me <*****@*****.**>'
예제 #8
0
    def test_send_email_attachment(self, smtpserver):
        p = Postman(*smtpserver.addr)

        r = p.send(
            email(
                sender='Me <*****@*****.**>',
                receivers=['*****@*****.**'],
                subject='Something',
                content='<p>hi</p>',
                attachments=['tests/assets/spacer.gif'],
                cc=['*****@*****.**', '*****@*****.**'],
                bcc=['*****@*****.**', '*****@*****.**'],
                encoding='ascii',
            ))

        assert r.ok
        assert len(smtpserver.outbox) == 1

        message = smtpserver.outbox[0]
        assert message['Content-Type'].startswith('multipart/mixed')
        assert message['Subject'] == 'Something'
        assert message['To'] == '*****@*****.**'
        assert message['CC'] == '[email protected], [email protected]'
        assert message['From'] == 'Me <*****@*****.**>'