Skip to content

Commit cb95cc2

Browse files
mrahtzgvanrossum
andauthored
GH-87390: Add remaining tests for PEP 646 (#98267)
Co-authored-by: Guido van Rossum <gvanrossum@gmail.com>
1 parent 5076108 commit cb95cc2

File tree

3 files changed

+473
-242
lines changed

3 files changed

+473
-242
lines changed

Lib/test/test_genericalias.py

+10-51
Original file line numberDiff line numberDiff line change
@@ -205,23 +205,11 @@ class MyList(list):
205205
self.assertEqual(repr(list[str]), 'list[str]')
206206
self.assertEqual(repr(list[()]), 'list[()]')
207207
self.assertEqual(repr(tuple[int, ...]), 'tuple[int, ...]')
208-
x1 = tuple[
209-
tuple( # Effectively the same as starring; TODO
210-
tuple[int]
211-
)
212-
]
208+
x1 = tuple[*tuple[int]]
213209
self.assertEqual(repr(x1), 'tuple[*tuple[int]]')
214-
x2 = tuple[
215-
tuple( # Ditto TODO
216-
tuple[int, str]
217-
)
218-
]
210+
x2 = tuple[*tuple[int, str]]
219211
self.assertEqual(repr(x2), 'tuple[*tuple[int, str]]')
220-
x3 = tuple[
221-
tuple( # Ditto TODO
222-
tuple[int, ...]
223-
)
224-
]
212+
x3 = tuple[*tuple[int, ...]]
225213
self.assertEqual(repr(x3), 'tuple[*tuple[int, ...]]')
226214
self.assertTrue(repr(MyList[int]).endswith('.BaseTest.test_repr.<locals>.MyList[int]'))
227215
self.assertEqual(repr(list[str]()), '[]') # instances should keep their normal repr
@@ -275,42 +263,24 @@ def test_parameters(self):
275263
self.assertEqual(L5.__args__, (Callable[[K, V], K],))
276264
self.assertEqual(L5.__parameters__, (K, V))
277265

278-
T1 = tuple[
279-
tuple( # Ditto TODO
280-
tuple[int]
281-
)
282-
]
266+
T1 = tuple[*tuple[int]]
283267
self.assertEqual(
284268
T1.__args__,
285-
tuple( # Ditto TODO
286-
tuple[int]
287-
)
269+
(*tuple[int],),
288270
)
289271
self.assertEqual(T1.__parameters__, ())
290272

291-
T2 = tuple[
292-
tuple( # Ditto TODO
293-
tuple[T]
294-
)
295-
]
273+
T2 = tuple[*tuple[T]]
296274
self.assertEqual(
297275
T2.__args__,
298-
tuple( # Ditto TODO
299-
tuple[T]
300-
)
276+
(*tuple[T],),
301277
)
302278
self.assertEqual(T2.__parameters__, (T,))
303279

304-
T4 = tuple[
305-
tuple( # Ditto TODO
306-
tuple[int, str]
307-
)
308-
]
280+
T4 = tuple[*tuple[int, str]]
309281
self.assertEqual(
310282
T4.__args__,
311-
tuple( # Ditto TODO
312-
tuple[int, str]
313-
)
283+
(*tuple[int, str],),
314284
)
315285
self.assertEqual(T4.__parameters__, ())
316286

@@ -345,18 +315,7 @@ def test_equality(self):
345315
self.assertEqual(list[int], list[int])
346316
self.assertEqual(dict[str, int], dict[str, int])
347317
self.assertEqual((*tuple[int],)[0], (*tuple[int],)[0])
348-
self.assertEqual(
349-
tuple[
350-
tuple( # Effectively the same as starring; TODO
351-
tuple[int]
352-
)
353-
],
354-
tuple[
355-
tuple( # Ditto TODO
356-
tuple[int]
357-
)
358-
]
359-
)
318+
self.assertEqual(tuple[*tuple[int]], tuple[*tuple[int]])
360319
self.assertNotEqual(dict[str, int], dict[str, str])
361320
self.assertNotEqual(list, list[int])
362321
self.assertNotEqual(list[int], list)

0 commit comments

Comments
 (0)