[3.7] bpo-34490: Fix test_asyncio for AIX - do not call transport.get_extra_info('sockname') (GH-8907) (#9286)

* [3.7] Fix test_asyncio for AIX - do not call transport.get_extra_info('sockname') (GH-8907).
(cherry picked from commit 413118ebf3)

Co-authored-by: Michael Felt <aixtools@users.noreply.github.com>

* Update test_events.py
This commit is contained in:
Andrew Svetlov 2018-09-13 17:03:35 -07:00 committed by GitHub
parent 2b162941c0
commit d0491cd7fd
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 8 additions and 4 deletions

View file

@ -37,9 +37,11 @@
from test import support
def osx_tiger():
def broken_unix_getsockname():
"""Return True if the platform is Mac OS 10.4 or older."""
if sys.platform != 'darwin':
if sys.platform.startswith("aix"):
return True
elif sys.platform != 'darwin':
return False
version = platform.mac_ver()[0]
version = tuple(map(int, version.split('.')))
@ -613,7 +615,7 @@ def test_create_connection(self):
def test_create_unix_connection(self):
# Issue #20682: On Mac OS X Tiger, getsockname() returns a
# zero-length address for UNIX socket.
check_sockname = not osx_tiger()
check_sockname = not broken_unix_getsockname()
with test_utils.run_test_unix_server() as httpd:
conn_fut = self.loop.create_unix_connection(
@ -744,7 +746,7 @@ def test_create_ssl_connection(self):
def test_create_ssl_unix_connection(self):
# Issue #20682: On Mac OS X Tiger, getsockname() returns a
# zero-length address for UNIX socket.
check_sockname = not osx_tiger()
check_sockname = not broken_unix_getsockname()
with test_utils.run_test_unix_server(use_ssl=True) as httpd:
create_connection = functools.partial(

View file

@ -0,0 +1,2 @@
On AIX with AF_UNIX family sockets getsockname() does not provide 'sockname',
so skip calls to transport.get_extra_info('sockname')