File tree Expand file tree Collapse file tree 1 file changed +10
-3
lines changed Expand file tree Collapse file tree 1 file changed +10
-3
lines changed Original file line number Diff line number Diff line change @@ -8135,7 +8135,7 @@ class Group(NamedTuple):
81358135 self .assertIs (type (a ), Group )
81368136 self .assertEqual (a , (1 , [2 ]))
81378137
8138- def test_classcell_access (self ):
8138+ def test_super_works_in_namedtuples (self ):
81398139 # See #85795: __class__ not set defining 'X' as <class '__main__.X'>
81408140 class Pointer (NamedTuple ):
81418141 address : int
@@ -8155,9 +8155,16 @@ def count(self, item):
81558155 self .assertEqual (ptr .count (0 ), - 1 )
81568156 self .assertEqual (ptr .count (0xdeadbeef ), 1 )
81578157
8158+ @cpython_only
8159+ def test_classcell_not_leaked (self ):
8160+ # __classcell__ should never be leaked into end classes
8161+
8162+ class Spam (NamedTuple ):
8163+ lambda : super ()
8164+ lambda : __class__
8165+
81588166 with self .assertRaises (AttributeError ):
8159- # __classcell__ should never be leaked into end classes
8160- Pointer .__classcell__
8167+ Spam .__classcell__
81618168
81628169 def test_namedtuple_keyword_usage (self ):
81638170 with self .assertWarnsRegex (
You can’t perform that action at this time.
0 commit comments