Skip to content

Commit b52de7e

Browse files
gh-123881: Add additional test coverage for PEP 695 edge cases (#123886)
1 parent 2afba5c commit b52de7e

File tree

1 file changed

+17
-0
lines changed

1 file changed

+17
-0
lines changed

Lib/test/test_type_params.py

+17
Original file line numberDiff line numberDiff line change
@@ -951,6 +951,7 @@ class C[T](Base, a=1, b=2, **kwargs):
951951
T, = C.__type_params__
952952
self.assertEqual(T.__name__, "T")
953953
self.assertEqual(C.kwargs, {"a": 1, "b": 2, "c": 3})
954+
self.assertEqual(C.__bases__, (Base, Generic))
954955

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

963980

964981
class TypeParamsTraditionalTypeVarsTest(unittest.TestCase):

0 commit comments

Comments
 (0)