From: Senthil Kumaran Date: Wed, 24 Feb 2010 21:03:37 +0000 (+0000) Subject: Merged revisions 78431 via svnmerge from X-Git-Tag: v3.2a1~1633 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=6d726c3a2f105b19b44cba0fdd10646a69cafaaa;p=python Merged revisions 78431 via svnmerge from svn+ssh://pythondev@svn.python.org/python/trunk ........ r78431 | senthil.kumaran | 2010-02-25 02:25:31 +0530 (Thu, 25 Feb 2010) | 4 lines Fix for Issue7540 ; urllib2 will raise a TypeError when you try to add_data to a existing req object already having data. ........ --- diff --git a/Lib/test/test_urllib2.py b/Lib/test/test_urllib2.py index 11848e07e4..080c2f1f49 100644 --- a/Lib/test/test_urllib2.py +++ b/Lib/test/test_urllib2.py @@ -1220,6 +1220,7 @@ class RequestTests(unittest.TestCase): self.get.add_data("spam") self.assertTrue(self.get.has_data()) self.assertEqual("POST", self.get.get_method()) + self.assertRaises(TypeError,self.get.add_data, "more spam") def test_get_full_url(self): self.assertEqual("http://www.python.org/~jeremy/", diff --git a/Lib/urllib/request.py b/Lib/urllib/request.py index b9de4793b3..5bdc103563 100644 --- a/Lib/urllib/request.py +++ b/Lib/urllib/request.py @@ -192,6 +192,9 @@ class Request: # Begin deprecated methods def add_data(self, data): + if self.has_data(): + raise TypeError("Request Obj already contains data: %s" % + self.data) self.data = data def has_data(self):