summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard Jones <richard@commonground.com.au>2010-08-04 12:27:36 (GMT)
committerRichard Jones <richard@commonground.com.au>2010-08-04 12:27:36 (GMT)
commit6a9e6bbf1a7f2953fef2ebe67c9aac093275e4de (patch)
tree9c38030471141e6feaf0e1991b0fd7d0ae751a3a
parent62f68ed31f6ace44f524797787df2eb66ffb306c (diff)
downloadcpython-6a9e6bbf1a7f2953fef2ebe67c9aac093275e4de.zip
cpython-6a9e6bbf1a7f2953fef2ebe67c9aac093275e4de.tar.gz
cpython-6a9e6bbf1a7f2953fef2ebe67c9aac093275e4de.tar.bz2
fix test_smtplib/test_smtpd collision through pre-loaded reply data in mock_socket
-rw-r--r--Lib/test/mock_socket.py1
-rw-r--r--Lib/test/test_smtpd.py8
-rw-r--r--Lib/test/test_smtplib.py5
3 files changed, 10 insertions, 4 deletions
diff --git a/Lib/test/mock_socket.py b/Lib/test/mock_socket.py
index 1512642..8036932 100644
--- a/Lib/test/mock_socket.py
+++ b/Lib/test/mock_socket.py
@@ -36,6 +36,7 @@ class MockSocket:
self.lines = []
if _reply_data:
self.lines.append(_reply_data)
+ _reply_data = None
self.conn = None
self.timeout = None
diff --git a/Lib/test/test_smtpd.py b/Lib/test/test_smtpd.py
index 04cac9a..9d168c7 100644
--- a/Lib/test/test_smtpd.py
+++ b/Lib/test/test_smtpd.py
@@ -189,8 +189,8 @@ class SMTPDChannelTest(TestCase):
self.write_line(b'RCPT To:ham@example')
self.write_line(b'DATA')
self.write_line(b'data\r\n.')
- self.assertEqual(self.server.messages[-1],
- ('peer', 'eggs@example', ['spam@example','ham@example'], 'data'))
+ self.assertEqual(self.server.messages,
+ [('peer', 'eggs@example', ['spam@example','ham@example'], 'data')])
def test_manual_status(self):
# checks that the Channel is able to return a custom status message
@@ -209,8 +209,8 @@ class SMTPDChannelTest(TestCase):
self.write_line(b'RCPT To:eggs@example')
self.write_line(b'DATA')
self.write_line(b'data\r\n.')
- self.assertEqual(self.server.messages[0],
- ('peer', 'foo@example', ['eggs@example'], 'data'))
+ self.assertEqual(self.server.messages,
+ [('peer', 'foo@example', ['eggs@example'], 'data')])
def test_RSET_syntax(self):
self.write_line(b'RSET hi')
diff --git a/Lib/test/test_smtplib.py b/Lib/test/test_smtplib.py
index 57faf6e..831f2d7 100644
--- a/Lib/test/test_smtplib.py
+++ b/Lib/test/test_smtplib.py
@@ -64,17 +64,20 @@ class GeneralTests(unittest.TestCase):
smtp.close()
def testBasic2(self):
+ mock_socket.reply_with(b"220 Hola mundo")
# connects, include port in host name
smtp = smtplib.SMTP("%s:%s" % (HOST, self.port))
smtp.close()
def testLocalHostName(self):
+ mock_socket.reply_with(b"220 Hola mundo")
# check that supplied local_hostname is used
smtp = smtplib.SMTP(HOST, self.port, local_hostname="testhost")
self.assertEqual(smtp.local_hostname, "testhost")
smtp.close()
def testTimeoutDefault(self):
+ mock_socket.reply_with(b"220 Hola mundo")
self.assertTrue(mock_socket.getdefaulttimeout() is None)
mock_socket.setdefaulttimeout(30)
self.assertEqual(mock_socket.getdefaulttimeout(), 30)
@@ -86,6 +89,7 @@ class GeneralTests(unittest.TestCase):
smtp.close()
def testTimeoutNone(self):
+ mock_socket.reply_with(b"220 Hola mundo")
self.assertTrue(socket.getdefaulttimeout() is None)
socket.setdefaulttimeout(30)
try:
@@ -96,6 +100,7 @@ class GeneralTests(unittest.TestCase):
smtp.close()
def testTimeoutValue(self):
+ mock_socket.reply_with(b"220 Hola mundo")
smtp = smtplib.SMTP(HOST, self.port, timeout=30)
self.assertEqual(smtp.sock.gettimeout(), 30)
smtp.close()