gh-105726: Add __slots__ to AbstractContextManager and AbstractAsyncContextManager (#106771)

Co-authored-by: Kumar Aditya <kumaraditya@python.org>
This commit is contained in:
Grigoriev Semyon 2023-07-16 18:30:39 +03:00 committed by GitHub
parent cc25ca16ee
commit 55408f86d7
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 29 additions and 0 deletions

View file

@ -24,6 +24,16 @@ class TestAbstractContextManager(unittest.TestCase):
manager = DefaultEnter()
self.assertIs(manager.__enter__(), manager)
def test_slots(self):
class DefaultContextManager(AbstractContextManager):
__slots__ = ()
def __exit__(self, *args):
super().__exit__(*args)
with self.assertRaises(AttributeError):
DefaultContextManager().var = 42
def test_exit_is_abstract(self):
class MissingExit(AbstractContextManager):
pass