summaryrefslogtreecommitdiffstats
path: root/Lib/test/test_httplib.py
diff options
context:
space:
mode:
authorAntoine Pitrou <solipsis@pitrou.net>2009-09-29 18:44:53 (GMT)
committerAntoine Pitrou <solipsis@pitrou.net>2009-09-29 18:44:53 (GMT)
commitead1d62d3239109656d4b3fd2f99461dddb2fae1 (patch)
tree96627b09fe56dd5d6d2c0aed02d74e9b7079e008 /Lib/test/test_httplib.py
parent8da3cac4a054e7edccfecce71f4f526e329c730f (diff)
downloadcpython-ead1d62d3239109656d4b3fd2f99461dddb2fae1.zip
cpython-ead1d62d3239109656d4b3fd2f99461dddb2fae1.tar.gz
cpython-ead1d62d3239109656d4b3fd2f99461dddb2fae1.tar.bz2
[NOTE: the original bug doesn't exist in py3k but this adds Kirk's tests and fixes
another bug in the process] Merged revisions 75134 via svnmerge from svn+ssh://pythondev@svn.python.org/python/trunk ........ r75134 | antoine.pitrou | 2009-09-29 19:48:18 +0200 (mar., 29 sept. 2009) | 4 lines 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.py15
1 files changed, 15 insertions, 0 deletions
diff --git a/Lib/test/test_httplib.py b/Lib/test/test_httplib.py
index 2d76f7a..37cda5d 100644
--- a/Lib/test/test_httplib.py
+++ b/Lib/test/test_httplib.py
@@ -1,6 +1,7 @@
import errno
from http import client
import io
+import array
import socket
from unittest import TestCase
@@ -174,6 +175,20 @@ class BasicTest(TestCase):
self.assertTrue(sock.data.startswith(expected), '%r != %r' %
(sock.data[:len(expected)], expected))
+ def test_send(self):
+ expected = b'this is a test this is only a test'
+ conn = client.HTTPConnection('example.com')
+ sock = FakeSocket(None)
+ conn.sock = sock
+ conn.send(expected)
+ self.assertEquals(expected, sock.data)
+ sock.data = b''
+ conn.send(array.array('b', expected))
+ self.assertEquals(expected, sock.data)
+ sock.data = b''
+ conn.send(io.BytesIO(expected))
+ self.assertEquals(expected, sock.data)
+
def test_chunked(self):
chunked_start = (
'HTTP/1.1 200 OK\r\n'