diff options
author | Victor Stinner <vstinner@python.org> | 2020-08-07 15:56:42 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-08-07 15:56:42 (GMT) |
commit | f44693eaed3b9d91a6e415d48224fd4750b59366 (patch) | |
tree | 3ce119ec0ab6f09769273c748f84777001bf91d5 /Lib/test/test_genericalias.py | |
parent | 598a951844122678de2596dbc1e0e09e2be65fd2 (diff) | |
download | cpython-f44693eaed3b9d91a6e415d48224fd4750b59366.zip cpython-f44693eaed3b9d91a6e415d48224fd4750b59366.tar.gz cpython-f44693eaed3b9d91a6e415d48224fd4750b59366.tar.bz2 |
bpo-41477: Make ctypes optional in test_genericalias (GH-21766)
Diffstat (limited to 'Lib/test/test_genericalias.py')
-rw-r--r-- | Lib/test/test_genericalias.py | 80 |
1 files changed, 42 insertions, 38 deletions
diff --git a/Lib/test/test_genericalias.py b/Lib/test/test_genericalias.py index 4f3798e..1f24469 100644 --- a/Lib/test/test_genericalias.py +++ b/Lib/test/test_genericalias.py @@ -13,7 +13,10 @@ from contextvars import ContextVar, Token from dataclasses import Field from functools import partial, partialmethod, cached_property from mailbox import Mailbox, _PartialFile -from ctypes import Array, LibraryLoader +try: + import ctypes +except ImportError: + ctypes = None from difflib import SequenceMatcher from filecmp import dircmp from fileinput import FileInput @@ -46,43 +49,44 @@ class BaseTest(unittest.TestCase): """Test basics.""" def test_subscriptable(self): - for t in (type, tuple, list, dict, set, frozenset, enumerate, - defaultdict, deque, - SequenceMatcher, - dircmp, - FileInput, - OrderedDict, Counter, UserDict, UserList, - Pattern, Match, - partial, partialmethod, cached_property, - AbstractContextManager, AbstractAsyncContextManager, - Awaitable, Coroutine, - AsyncIterable, AsyncIterator, - AsyncGenerator, Generator, - Iterable, Iterator, - Reversible, - Container, Collection, - Callable, - Mailbox, _PartialFile, - ContextVar, Token, - Field, - Set, MutableSet, - Mapping, MutableMapping, MappingView, - KeysView, ItemsView, ValuesView, - Sequence, MutableSequence, - MappingProxyType, AsyncGeneratorType, - DirEntry, - chain, - TemporaryDirectory, SpooledTemporaryFile, - Queue, SimpleQueue, - _AssertRaisesContext, - Array, LibraryLoader, - SplitResult, ParseResult, - ValueProxy, ApplyResult, - WeakSet, ReferenceType, ref, - ShareableList, SimpleQueue, - Future, _WorkItem, - Morsel, - ): + types = [type, tuple, list, dict, set, frozenset, enumerate, + defaultdict, deque, + SequenceMatcher, + dircmp, + FileInput, + OrderedDict, Counter, UserDict, UserList, + Pattern, Match, + partial, partialmethod, cached_property, + AbstractContextManager, AbstractAsyncContextManager, + Awaitable, Coroutine, + AsyncIterable, AsyncIterator, + AsyncGenerator, Generator, + Iterable, Iterator, + Reversible, + Container, Collection, + Callable, + Mailbox, _PartialFile, + ContextVar, Token, + Field, + Set, MutableSet, + Mapping, MutableMapping, MappingView, + KeysView, ItemsView, ValuesView, + Sequence, MutableSequence, + MappingProxyType, AsyncGeneratorType, + DirEntry, + chain, + TemporaryDirectory, SpooledTemporaryFile, + Queue, SimpleQueue, + _AssertRaisesContext, + SplitResult, ParseResult, + ValueProxy, ApplyResult, + WeakSet, ReferenceType, ref, + ShareableList, SimpleQueue, + Future, _WorkItem, + Morsel] + if ctypes is not None: + types.extend((ctypes.Array, ctypes.LibraryLoader)) + for t in types: if t is None: continue tname = t.__name__ |