[pypy-svn] r63058 - pypy/trunk/pypy/rlib/test
arigo at codespeak.net
arigo at codespeak.net
Thu Mar 19 10:14:10 CET 2009
Author: arigo
Date: Thu Mar 19 10:14:09 2009
New Revision: 63058
Modified:
pypy/trunk/pypy/rlib/test/test_rsocket.py
Log:
Fix test_rsocket to also pass on wyvern, where it seems that
even though we send packets to 127.0.0.1 they go via the real
network interface.
Modified: pypy/trunk/pypy/rlib/test/test_rsocket.py
==============================================================================
--- pypy/trunk/pypy/rlib/test/test_rsocket.py (original)
+++ pypy/trunk/pypy/rlib/test/test_rsocket.py Thu Mar 19 10:14:09 2009
@@ -179,9 +179,6 @@
s2.close()
def test_simple_udp():
- if cpy_socket.gethostname() == 'wyvern':
- py.test.skip("this is currently hanging on wyvern")
-
s1 = RSocket(AF_INET, SOCK_DGRAM)
try_ports = [1023] + range(20000, 30000, 437)
for port in try_ports:
@@ -198,18 +195,19 @@
addr = INETAddress('127.0.0.1', port)
assert addr.eq(s1.getsockname())
s2 = RSocket(AF_INET, SOCK_DGRAM)
- s2.connect(addr)
+ s2.bind(INETAddress('127.0.0.1', INADDR_ANY))
addr2 = s2.getsockname()
s1.sendto('?', 0, addr2)
buf = s2.recv(100)
assert buf == '?'
+ s2.connect(addr)
count = s2.send('x'*99)
assert 1 <= count <= 99
buf, addr3 = s1.recvfrom(100)
assert buf == 'x'*count
print addr2, addr3
- assert addr3.eq(addr2)
+ assert addr2.get_port() == addr3.get_port()
s1.close()
s2.close()
@@ -244,7 +242,7 @@
s1, addr2 = sock.accept()
s1.setblocking(False)
assert addr.eq(s2.getpeername())
- assert addr2.eq(s2.getsockname())
+ assert addr2.get_port() == s2.getsockname().get_port()
assert addr2.eq(s1.getpeername())
err = s2.connect_ex(addr) # should now work
More information about the Pypy-commit
mailing list