Skip to content

Commit 601ef40

Browse files
[3.13] gh-123881: Add additional test coverage for PEP 695 edge cases (GH-123886) (#123890)
gh-123881: Add additional test coverage for PEP 695 edge cases (GH-123886) (cherry picked from commit b52de7e) Co-authored-by: Jelle Zijlstra <[email protected]>
1 parent 4c3d537 commit 601ef40

File tree

1 file changed

+17
-0
lines changed

1 file changed

+17
-0
lines changed

Lib/test/test_type_params.py

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -950,6 +950,7 @@ class C[T](Base, a=1, b=2, **kwargs):
950950
T, = C.__type_params__
951951
self.assertEqual(T.__name__, "T")
952952
self.assertEqual(C.kwargs, {"a": 1, "b": 2, "c": 3})
953+
self.assertEqual(C.__bases__, (Base, Generic))
953954

954955
bases = (Base,)
955956
class C2[T](*bases, **kwargs):
@@ -958,6 +959,22 @@ class C2[T](*bases, **kwargs):
958959
T, = C2.__type_params__
959960
self.assertEqual(T.__name__, "T")
960961
self.assertEqual(C2.kwargs, {"c": 3})
962+
self.assertEqual(C2.__bases__, (Base, Generic))
963+
964+
def test_starargs_base(self):
965+
class C1[T](*()): pass
966+
967+
T, = C1.__type_params__
968+
self.assertEqual(T.__name__, "T")
969+
self.assertEqual(C1.__bases__, (Generic,))
970+
971+
class Base: pass
972+
bases = [Base]
973+
class C2[T](*bases): pass
974+
975+
T, = C2.__type_params__
976+
self.assertEqual(T.__name__, "T")
977+
self.assertEqual(C2.__bases__, (Base, Generic))
961978

962979

963980
class TypeParamsTraditionalTypeVarsTest(unittest.TestCase):

0 commit comments

Comments
 (0)