MCPcopy Index your code
hub / github.com/python/cpython / test_parameter_chaining

Method test_parameter_chaining

Lib/test/test_genericalias.py:369–397  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

367 self.assertEqual(T4.__parameters__, ())
368
369 def test_parameter_chaining(self):
370 from typing import List, Dict, Union, Callable
371 self.assertEqual(list[T][int], list[int])
372 self.assertEqual(dict[str, T][int], dict[str, int])
373 self.assertEqual(dict[T, int][str], dict[str, int])
374 self.assertEqual(dict[K, V][str, int], dict[str, int])
375 self.assertEqual(dict[T, T][int], dict[int, int])
376
377 self.assertEqual(list[list[T]][int], list[list[int]])
378 self.assertEqual(list[dict[T, int]][str], list[dict[str, int]])
379 self.assertEqual(list[dict[str, T]][int], list[dict[str, int]])
380 self.assertEqual(list[dict[K, V]][str, int], list[dict[str, int]])
381 self.assertEqual(dict[T, list[int]][str], dict[str, list[int]])
382
383 self.assertEqual(list[List[T]][int], list[List[int]])
384 self.assertEqual(list[Dict[K, V]][str, int], list[Dict[str, int]])
385 self.assertEqual(list[Union[K, V]][str, int], list[Union[str, int]])
386 self.assertEqual(list[Callable[[K, V], K]][str, int],
387 list[Callable[[str, int], str]])
388 self.assertEqual(dict[T, List[int]][str], dict[str, List[int]])
389
390 with self.assertRaises(TypeError):
391 list[int][int]
392 with self.assertRaises(TypeError):
393 dict[T, int][str, int]
394 with self.assertRaises(TypeError):
395 dict[str, T][str, int]
396 with self.assertRaises(TypeError):
397 dict[T, T][str, int]
398
399 def test_equality(self):
400 self.assertEqual(list[int], list[int])

Callers

nothing calls this directly

Calls 2

assertRaisesMethod · 0.95
assertEqualMethod · 0.45

Tested by

no test coverage detected