stubs = methodstubs.copy()
del stubs[name]
C = type('C', (abc,), stubs)
- self.assertRaises(TypeError, C, name)
+ self.assertRaises(TypeError, C)
def validate_isinstance(self, abc, name):
stub = lambda s, *args: 0
async def __anext__(self):
raise StopAsyncIteration
self.assertNotIsInstance(AnextOnly(), AsyncIterator)
- self.validate_abstract_methods(AsyncIterator, '__anext__', '__aiter__')
+ self.validate_abstract_methods(AsyncIterator, '__anext__')
def test_Iterable(self):
# Check some non-iterables
for x in samples:
self.assertIsInstance(x, Iterator)
self.assertIsSubclass(type(x), Iterator)
- self.validate_abstract_methods(Iterator, '__next__', '__iter__')
+ self.validate_abstract_methods(Iterator, '__next__')
# Issue 10565
class NextOnly:
for sample in [dict]:
self.assertIsInstance(sample(), Mapping)
self.assertIsSubclass(sample, Mapping)
- self.validate_abstract_methods(Mapping, '__contains__', '__iter__', '__len__',
- '__getitem__')
+ self.validate_abstract_methods(Mapping, '__iter__', '__len__', '__getitem__')
class MyMapping(Mapping):
def __len__(self):
return 0
for sample in [dict]:
self.assertIsInstance(sample(), MutableMapping)
self.assertIsSubclass(sample, MutableMapping)
- self.validate_abstract_methods(MutableMapping, '__contains__', '__iter__', '__len__',
+ self.validate_abstract_methods(MutableMapping, '__iter__', '__len__',
'__getitem__', '__setitem__', '__delitem__')
def test_MutableMapping_subclass(self):
self.assertIsInstance(memoryview(b""), Sequence)
self.assertIsSubclass(memoryview, Sequence)
self.assertIsSubclass(str, Sequence)
- self.validate_abstract_methods(Sequence, '__contains__', '__iter__', '__len__',
- '__getitem__')
+ self.validate_abstract_methods(Sequence, '__len__', '__getitem__')
def test_Sequence_mixins(self):
class SequenceSubclass(Sequence):
self.assertIsSubclass(sample, MutableSequence)
self.assertIsSubclass(array.array, MutableSequence)
self.assertNotIsSubclass(str, MutableSequence)
- self.validate_abstract_methods(MutableSequence, '__contains__', '__iter__',
- '__len__', '__getitem__', '__setitem__', '__delitem__', 'insert')
+ self.validate_abstract_methods(MutableSequence, '__len__', '__getitem__',
+ '__setitem__', '__delitem__', 'insert')
def test_MutableSequence_mixins(self):
# Test the mixins of MutableSequence by creating a minimal concrete