Only the test is merged in.

Merged revisions 80423 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r80423 | antoine.pitrou | 2010-04-24 00:54:59 +0200 (sam., 24 avril 2010) | 4 lines

  Issue #7943: Fix circular reference created when instantiating an SSL
  socket.  Initial patch by Péter Szabó.
........
This commit is contained in:
Antoine Pitrou 2010-04-23 23:10:32 +00:00
parent ce2d24d549
commit 9d5436621f
1 changed files with 11 additions and 0 deletions

View File

@ -11,6 +11,7 @@ import pprint
import urllib.parse, urllib.request import urllib.parse, urllib.request
import traceback import traceback
import asyncore import asyncore
import weakref
from http.server import HTTPServer, SimpleHTTPRequestHandler from http.server import HTTPServer, SimpleHTTPRequestHandler
@ -138,6 +139,16 @@ class BasicTests(unittest.TestCase):
with self.assertRaisesRegexp(ssl.SSLError, "No cipher can be selected"): with self.assertRaisesRegexp(ssl.SSLError, "No cipher can be selected"):
s.connect(remote) s.connect(remote)
@support.cpython_only
def test_refcycle(self):
# Issue #7943: an SSL object doesn't create reference cycles with
# itself.
s = socket.socket(socket.AF_INET)
ss = ssl.wrap_socket(s)
wr = weakref.ref(ss)
del ss
self.assertEqual(wr(), None)
class NetworkedTests(unittest.TestCase): class NetworkedTests(unittest.TestCase):