[pypy-commit] pypy py3k: socket.getaddrinfo() accept strings for the 'port' parameter
amauryfa
noreply at buildbot.pypy.org
Tue Dec 6 23:51:34 CET 2011
Author: Amaury Forgeot d'Arc <amauryfa at gmail.com>
Branch: py3k
Changeset: r50237:df2edb52b29e
Date: 2011-12-05 22:48 +0100
http://bitbucket.org/pypy/pypy/changeset/df2edb52b29e/
Log: socket.getaddrinfo() accept strings for the 'port' parameter
diff --git a/pypy/module/_socket/interp_func.py b/pypy/module/_socket/interp_func.py
--- a/pypy/module/_socket/interp_func.py
+++ b/pypy/module/_socket/interp_func.py
@@ -270,7 +270,9 @@
port = None
elif space.is_true(space.isinstance(w_port, space.w_int)):
port = str(space.int_w(w_port))
- elif space.is_true(space.isinstance(w_port, space.w_str)):
+ elif space.is_true(space.isinstance(w_port, space.w_bytes)):
+ port = space.bytes_w(w_port)
+ elif space.is_true(space.isinstance(w_port, space.w_unicode)):
port = space.str_w(w_port)
else:
raise OperationError(space.w_TypeError,
diff --git a/pypy/module/_socket/test/test_sock_app.py b/pypy/module/_socket/test/test_sock_app.py
--- a/pypy/module/_socket/test/test_sock_app.py
+++ b/pypy/module/_socket/test/test_sock_app.py
@@ -223,10 +223,12 @@
w_l = space.appexec([w_socket, space.wrapbytes(host), space.wrap(port)],
"(_socket, host, port): return _socket.getaddrinfo(host, port)")
assert space.unwrap(w_l) == info
- py.test.skip("Unicode conversion is too slow")
w_l = space.appexec([w_socket, space.wrap(host), space.wrap(port)],
"(_socket, host, port): return _socket.getaddrinfo(host, port)")
assert space.unwrap(w_l) == info
+ w_l = space.appexec([w_socket, space.wrapbytes(host), space.wrap('smtp')],
+ "(_socket, host, port): return _socket.getaddrinfo(host, port)")
+ assert space.unwrap(w_l) == socket.getaddrinfo(host, 'smtp')
def test_unknown_addr_as_object():
c_addr = lltype.malloc(rsocket._c.sockaddr, flavor='raw')
More information about the pypy-commit
mailing list