Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 5eef78b

Browse files
committed
Merge 3.5 (asyncio)
2 parents 7c6b3ea + 63bf487 commit 5eef78b

2 files changed

Lines changed: 13 additions & 1 deletion

File tree

Lib/asyncio/selector_events.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -394,7 +394,8 @@ def sock_connect(self, sock, address):
394394
if hasattr(socket, 'AF_UNIX') and sock.family == socket.AF_UNIX:
395395
self._sock_connect(fut, sock, address)
396396
else:
397-
resolved = base_events._ensure_resolved(address, loop=self)
397+
resolved = base_events._ensure_resolved(
398+
address, family=sock.family, proto=sock.proto, loop=self)
398399
resolved.add_done_callback(
399400
lambda resolved: self._on_resolved(fut, sock, resolved))
400401

Lib/test/test_asyncio/test_selector_events.py

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -373,6 +373,17 @@ def test_sock_connect_timeout(self):
373373
self.loop.run_until_complete(fut)
374374
self.assertTrue(self.loop.remove_writer.called)
375375

376+
def test_sock_connect_resolve_using_socket_params(self):
377+
addr = ('need-resolution.com', 8080)
378+
sock = test_utils.mock_nonblocking_socket()
379+
self.loop.getaddrinfo = mock.Mock()
380+
self.loop.sock_connect(sock, addr)
381+
while not self.loop.getaddrinfo.called:
382+
self.loop._run_once()
383+
self.loop.getaddrinfo.assert_called_with(
384+
*addr, type=sock.type, family=sock.family, proto=sock.proto,
385+
flags=0)
386+
376387
def test__sock_connect(self):
377388
f = asyncio.Future(loop=self.loop)
378389

0 commit comments

Comments
 (0)