Merge pull request #11996 from scmmishra/smtp-port-issue
fix: typerror when creating an SMTP server without port
This commit is contained in:
commit
ae0cb6c328
2 changed files with 27 additions and 3 deletions
|
|
@ -210,10 +210,9 @@ class SMTPServer:
|
|||
try:
|
||||
if self.use_ssl:
|
||||
if not self.port:
|
||||
self.smtp_port = 465
|
||||
self.port = 465
|
||||
|
||||
self._sess = smtplib.SMTP_SSL((self.server or "").encode('utf-8'),
|
||||
cint(self.port) or None)
|
||||
self._sess = smtplib.SMTP_SSL((self.server or ""), cint(self.port))
|
||||
else:
|
||||
if self.use_tls and not self.port:
|
||||
self.port = 587
|
||||
|
|
|
|||
25
frappe/email/test_smtp.py
Normal file
25
frappe/email/test_smtp.py
Normal file
|
|
@ -0,0 +1,25 @@
|
|||
# Copyright (c) 2020, Frappe Technologies Pvt. Ltd. and Contributors
|
||||
# License: The MIT License
|
||||
|
||||
import unittest
|
||||
from frappe.email.smtp import SMTPServer
|
||||
|
||||
class TestSMTP(unittest.TestCase):
|
||||
def test_smtp_ssl_session(self):
|
||||
for port in [None, 0, 465, "465"]:
|
||||
make_server(port, 1, 0)
|
||||
|
||||
def test_smtp_tls_session(self):
|
||||
for port in [None, 0, 587, "587"]:
|
||||
make_server(port, 0, 1)
|
||||
|
||||
|
||||
def make_server(port, ssl, tls):
|
||||
server = SMTPServer(
|
||||
server = "smtp.gmail.com",
|
||||
port = port,
|
||||
use_ssl = ssl,
|
||||
use_tls = tls
|
||||
)
|
||||
|
||||
server.sess
|
||||
Loading…
Add table
Reference in a new issue