示例#1
0
    def test_is_connected(self):
        conn = SMTP('localhost')
        assert conn.is_connected is False

        conn._connect()
        assert conn.is_connected is True
        assert len(conn._conn._call_stack.get('noop', [])) == 1
示例#2
0
    def test_is_connected(self):
        conn = SMTP('localhost')
        assert conn.is_connected is False

        conn._connect()
        assert conn.is_connected is True
        assert len(conn._conn._call_stack.get('noop', [])) == 1
示例#3
0
    def test_connect(self):
        conn = SMTP('localhost')
        conn._connect()
        assert conn._conn is not None

        old_conn = conn._conn
        conn._connect()
        assert old_conn == conn._conn
示例#4
0
    def test_connect_replace_current(self):
        conn = SMTP('localhost')
        conn._connect()
        assert conn._conn is not None

        old_conn = conn._conn
        conn._connect(replace_current=True)
        assert conn._conn is not None
        assert conn._conn != old_conn
示例#5
0
    def test_connect_login(self):
        conn = SMTP('localhost')
        conn._connect()
        assert conn._conn is not None
        assert len(conn._conn._call_stack.get('login', [])) == 0

        conn = SMTP('localhost', login='******')
        conn._connect()
        assert conn._conn is not None
        assert len(conn._conn._call_stack.get('login', [])) == 1

        call_args = conn._conn._call_stack['login'][0][0]
        assert len(call_args) == 2
        assert call_args[0] == conn._login
        assert call_args[1] == ''

        conn = SMTP('localhost', login='******', password='******')
        conn._connect()
        assert conn._conn is not None
        assert len(conn._conn._call_stack.get('login', [])) == 1

        call_args = conn._conn._call_stack['login'][0][0]
        assert len(call_args) == 2
        assert call_args[0] == conn._login
        assert call_args[1] == conn._password
示例#6
0
    def test_connect_login(self):
        conn = SMTP("localhost")
        conn._connect()
        assert conn._conn is not None
        assert len(conn._conn._call_stack.get("login", [])) == 0

        conn = SMTP("localhost", login="******")
        conn._connect()
        assert conn._conn is not None
        assert len(conn._conn._call_stack.get("login", [])) == 1

        call_args = conn._conn._call_stack["login"][0][0]
        assert len(call_args) == 2
        assert call_args[0] == conn._login
        assert call_args[1] == ""

        conn = SMTP("localhost", login="******", password="******")
        conn._connect()
        assert conn._conn is not None
        assert len(conn._conn._call_stack.get("login", [])) == 1

        call_args = conn._conn._call_stack["login"][0][0]
        assert len(call_args) == 2
        assert call_args[0] == conn._login
        assert call_args[1] == conn._password
示例#7
0
    def test_send(self):
        conn = SMTP('localhost')

        msg = self._dummy_message()
        envelope = Envelope(**msg)
        mime_msg = envelope.to_mime_message()

        conn.send(envelope)
        assert conn._conn is not None
        assert len(conn._conn._call_stack.get('sendmail', [])) == 1

        call_args = conn._conn._call_stack['sendmail'][0][0]
        assert len(call_args) == 3
        assert call_args[0] == mime_msg['From']
        assert call_args[1] == mime_msg['To']
        assert call_args[2] != ''
示例#8
0
    def test_send(self):
        conn = SMTP('localhost')

        msg = self._dummy_message()
        envelope = Envelope(**msg)
        mime_msg = envelope.to_mime_message()

        conn.send(envelope)
        assert conn._conn is not None
        assert len(conn._conn._call_stack.get('sendmail', [])) == 1

        call_args = conn._conn._call_stack['sendmail'][0][0]
        assert len(call_args) == 3
        assert call_args[0] == mime_msg['From']
        assert call_args[1] == mime_msg['To']
        assert call_args[2] != ''
示例#9
0
    def test_connect_starttls(self):
        conn = SMTP('localhost', tls=False)
        conn._connect()
        assert conn._conn is not None
        assert len(conn._conn._call_stack.get('starttls', [])) == 0

        conn = SMTP('localhost', tls=True)
        conn._connect()
        assert conn._conn is not None
        assert len(conn._conn._call_stack.get('starttls', [])) == 1
示例#10
0
    def test_connect_smtps(self):
        conn = SMTP('localhost', smtps=False)
        conn._connect()
        assert conn._conn is not None
        assert conn._conn.default_port == SMTP_PORT

        conn = SMTP('localhost', smtps=True)
        conn._connect()
        assert conn._conn is not None
        assert conn._conn.default_port == SMTP_SSL_PORT
示例#11
0
    def test_send(self):
        conn = SMTP("localhost")

        msg = self._dummy_message()
        envelope = Envelope(**msg)
        mime_msg = envelope.to_mime_message()

        conn.send(envelope)
        assert conn._conn is not None
        assert len(conn._conn._call_stack.get("sendmail", [])) == 1

        call_args = conn._conn._call_stack["sendmail"][0][0]
        assert len(call_args) == 3
        assert call_args[0] == mime_msg["From"]
        assert call_args[1] == [
            envelope._addrs_to_header([addr]) for addr in envelope._to + envelope._cc + envelope._bcc
        ]
        assert call_args[2] != ""
示例#12
0
    def test_constructor(self):
        conn = SMTP('localhost',
                    port=587,
                    login='******',
                    password='******',
                    tls=True)

        assert conn._conn is None
        assert conn._host == 'localhost'
        assert conn._port == 587
        assert conn._login == 'spam'
        assert conn._password == 'eggs'
        assert conn._tls is True
示例#13
0
    def test_connect(self):
        conn = SMTP('localhost')
        conn._connect()
        assert conn._conn is not None

        old_conn = conn._conn
        conn._connect()
        assert old_conn == conn._conn
示例#14
0
    def test_connect_replace_current(self):
        conn = SMTP('localhost')
        conn._connect()
        assert conn._conn is not None

        old_conn = conn._conn
        conn._connect(replace_current=True)
        assert conn._conn is not None
        assert conn._conn != old_conn
示例#15
0
    def test_connect_starttls(self):
        conn = SMTP('localhost', tls=False)
        conn._connect()
        assert conn._conn is not None
        assert len(conn._conn._call_stack.get('starttls', [])) == 0

        conn = SMTP('localhost', tls=True)
        conn._connect()
        assert conn._conn is not None
        assert len(conn._conn._call_stack.get('starttls', [])) == 1
示例#16
0
    def test_connect_login(self):
        conn = SMTP('localhost')
        conn._connect()
        assert conn._conn is not None
        assert len(conn._conn._call_stack.get('login', [])) == 0

        conn = SMTP('localhost', login='******')
        conn._connect()
        assert conn._conn is not None
        assert len(conn._conn._call_stack.get('login', [])) == 1

        call_args = conn._conn._call_stack['login'][0][0]
        assert len(call_args) == 2
        assert call_args[0] == conn._login
        assert call_args[1] == ''

        conn = SMTP('localhost', login='******', password='******')
        conn._connect()
        assert conn._conn is not None
        assert len(conn._conn._call_stack.get('login', [])) == 1

        call_args = conn._conn._call_stack['login'][0][0]
        assert len(call_args) == 2
        assert call_args[0] == conn._login
        assert call_args[1] == conn._password