From 25a6833f7945f14cad83509ec73954d0ad70bdb1 Mon Sep 17 00:00:00 2001 From: Chih-Hsuan Yen Date: Tue, 14 Apr 2020 06:00:16 +0800 Subject: [PATCH] bpo-39481: fix test_genericalias on Android (GH-19469) Android bionic does not implement shm_open/shm_unlink [1]. As a result _posixshmem extension does not exist and multiprocessing.shared_memory cannot be imported. [1] https://android.googlesource.com/platform/bionic/+/master/docs/status.md --- Lib/test/test_genericalias.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/Lib/test/test_genericalias.py b/Lib/test/test_genericalias.py index a00899f5267..02b72838277 100644 --- a/Lib/test/test_genericalias.py +++ b/Lib/test/test_genericalias.py @@ -19,7 +19,11 @@ from itertools import chain from http.cookies import Morsel from multiprocessing.managers import ValueProxy from multiprocessing.pool import ApplyResult -from multiprocessing.shared_memory import ShareableList +try: + from multiprocessing.shared_memory import ShareableList +except ImportError: + # multiprocessing.shared_memory is not available on e.g. Android + ShareableList = None from multiprocessing.queues import SimpleQueue from os import DirEntry from re import Pattern, Match @@ -71,6 +75,8 @@ class BaseTest(unittest.TestCase): Future, _WorkItem, Morsel, ): + if t is None: + continue tname = t.__name__ with self.subTest(f"Testing {tname}"): alias = t[int]