Skip to content

Commit

Permalink
Use IPv4 only to avoid IP address collision (#7030)
Browse files Browse the repository at this point in the history
  • Loading branch information
asvetlov authored May 21, 2018
1 parent 1179f4b commit b7555ba
Showing 1 changed file with 4 additions and 6 deletions.
10 changes: 4 additions & 6 deletions Lib/test/test_asyncio/test_base_events.py
Original file line number Diff line number Diff line change
Expand Up @@ -1848,23 +1848,21 @@ def run_loop(self, coro):
def prepare(self):
sock = self.make_socket()
proto = self.MyProto(self.loop)
af = socket.AF_UNSPEC if support.IPV6_ENABLED else socket.AF_INET
server = self.run_loop(self.loop.create_server(
lambda: proto, support.HOST, 0, family=af))
port = server.sockets[0].getsockname()[1]
lambda: proto, support.HOST, 0, family=socket.AF_INET))
addr = server.sockets[0].getsockname()

for _ in range(10):
try:
self.run_loop(self.loop.sock_connect(sock,
(support.HOST, port)))
self.run_loop(self.loop.sock_connect(sock, addr))
except OSError:
self.run_loop(asyncio.sleep(0.5))
continue
else:
break
else:
# One last try, so we get the exception
self.run_loop(self.loop.sock_connect(sock, (support.HOST, port)))
self.run_loop(self.loop.sock_connect(sock, addr))

def cleanup():
server.close()
Expand Down

0 comments on commit b7555ba

Please sign in to comment.