diff options
author | Antoine Pitrou <solipsis@pitrou.net> | 2009-09-29 17:48:18 (GMT) |
---|---|---|
committer | Antoine Pitrou <solipsis@pitrou.net> | 2009-09-29 17:48:18 (GMT) |
commit | 7248178cd9efb2e568ba71f3293f3be23ef05e5d (patch) | |
tree | e5195e03b35fba77f3d36678239498703ce3fc51 /Lib/test/test_httplib.py | |
parent | 9ebd242fbbd2c52fcf314e22f6b5bf57954d52cd (diff) | |
download | cpython-7248178cd9efb2e568ba71f3293f3be23ef05e5d.zip cpython-7248178cd9efb2e568ba71f3293f3be23ef05e5d.tar.gz cpython-7248178cd9efb2e568ba71f3293f3be23ef05e5d.tar.bz2 |
Issue #6790: Make it possible again to pass an `array.array` to
`httplib.HTTPConnection.send`. Patch by Kirk McDonald.
Diffstat (limited to 'Lib/test/test_httplib.py')
-rw-r--r-- | Lib/test/test_httplib.py | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/Lib/test/test_httplib.py b/Lib/test/test_httplib.py index 77e9887..cd54323 100644 --- a/Lib/test/test_httplib.py +++ b/Lib/test/test_httplib.py @@ -1,3 +1,4 @@ +import array import httplib import StringIO import socket @@ -15,7 +16,7 @@ class FakeSocket: self.data = '' def sendall(self, data): - self.data += data + self.data += ''.join(data) def makefile(self, mode, bufsize=None): if mode != 'r' and mode != 'rb': @@ -162,6 +163,20 @@ class BasicTest(TestCase): conn.request('GET', '/foo', body) self.assertTrue(sock.data.startswith(expected)) + def test_send(self): + expected = 'this is a test this is only a test' + conn = httplib.HTTPConnection('example.com') + sock = FakeSocket(None) + conn.sock = sock + conn.send(expected) + self.assertEquals(expected, sock.data) + sock.data = '' + conn.send(array.array('c', expected)) + self.assertEquals(expected, sock.data) + sock.data = '' + conn.send(StringIO.StringIO(expected)) + self.assertEquals(expected, sock.data) + def test_chunked(self): chunked_start = ( 'HTTP/1.1 200 OK\r\n' |