]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
gh-98513: Test abstract methods of some `collections` types (#98516)
authorNikita Sobolev <mail@sobolevn.me>
Tue, 8 Nov 2022 01:48:23 +0000 (04:48 +0300)
committerGitHub <noreply@github.com>
Tue, 8 Nov 2022 01:48:23 +0000 (17:48 -0800)
Lib/test/test_collections.py

index 35ba5e97528b844be89fca78dd3aa2a62ac90de2..bfe18c7fc503305297f47fadf6897d65a778a2f5 100644 (file)
@@ -810,6 +810,8 @@ class TestOneTrickPonyABCs(ABCTestCase):
             def __await__(self):
                 yield
 
+        self.validate_abstract_methods(Awaitable, '__await__')
+
         non_samples = [None, int(), gen(), object()]
         for x in non_samples:
             self.assertNotIsInstance(x, Awaitable)
@@ -860,6 +862,8 @@ class TestOneTrickPonyABCs(ABCTestCase):
             def __await__(self):
                 yield
 
+        self.validate_abstract_methods(Coroutine, '__await__', 'send', 'throw')
+
         non_samples = [None, int(), gen(), object(), Bar()]
         for x in non_samples:
             self.assertNotIsInstance(x, Coroutine)
@@ -1943,6 +1947,7 @@ class TestCollectionABCs(ABCTestCase):
             self.assertFalse(issubclass(sample, ByteString))
         self.assertNotIsInstance(memoryview(b""), ByteString)
         self.assertFalse(issubclass(memoryview, ByteString))
+        self.validate_abstract_methods(ByteString, '__getitem__', '__len__')
 
     def test_MutableSequence(self):
         for sample in [tuple, str, bytes]: