[Python-checkins] cpython (3.2): Closes issue11563 - test_urllibnet ResourceWarning. Patch by Jeff McNeil.

senthil.kumaran python-checkins at python.org
Sat Mar 19 10:47:38 CET 2011


http://hg.python.org/cpython/rev/edc3d3b07435
changeset:   68675:edc3d3b07435
branch:      3.2
parent:      68665:f832ca852329
user:        Senthil Kumaran <orsenthil at gmail.com>
date:        Sat Mar 19 17:25:27 2011 +0800
summary:
  Closes issue11563 - test_urllibnet ResourceWarning. Patch by Jeff McNeil.

files:
  Lib/test/test_urllib.py
  Lib/urllib/request.py

diff --git a/Lib/test/test_urllib.py b/Lib/test/test_urllib.py
--- a/Lib/test/test_urllib.py
+++ b/Lib/test/test_urllib.py
@@ -91,7 +91,7 @@
                          "did not return the expected text")
 
     def test_close(self):
-        # Test close() by calling it hear and then having it be called again
+        # Test close() by calling it here and then having it be called again
         # by the tearDown() method for the test
         self.returned_obj.close()
 
@@ -174,6 +174,11 @@
         finally:
             self.unfakehttp()
 
+    def test_willclose(self):
+        self.fakehttp(b"HTTP/1.1 200 OK\r\n\r\nHello!")
+        resp = urlopen("http://www.python.org")
+        self.assertTrue(resp.fp.will_close)
+
     def test_read_0_9(self):
         # "0.9" response accepted (but not "simple responses" without
         # a status line)
diff --git a/Lib/urllib/request.py b/Lib/urllib/request.py
--- a/Lib/urllib/request.py
+++ b/Lib/urllib/request.py
@@ -1657,6 +1657,12 @@
             headers["Authorization"] =  "Basic %s" % auth
         if realhost:
             headers["Host"] = realhost
+
+        # Add Connection:close as we don't support persistent connections yet.
+        # This helps in closing the socket and avoiding ResourceWarning
+
+        headers["Connection"] = "close"
+
         for header, value in self.addheaders:
             headers[header] = value
 

-- 
Repository URL: http://hg.python.org/cpython


More information about the Python-checkins mailing list