(self)
| 443 | self.assertEqual(type(loaded), type(alias)) |
| 444 | |
| 445 | def test_copy(self): |
| 446 | class X(list): |
| 447 | def __copy__(self): |
| 448 | return self |
| 449 | def __deepcopy__(self, memo): |
| 450 | return self |
| 451 | |
| 452 | aliases = [ |
| 453 | GenericAlias(list, T), |
| 454 | GenericAlias(deque, T), |
| 455 | GenericAlias(X, T), |
| 456 | X[T], |
| 457 | list[T], |
| 458 | deque[T], |
| 459 | ] + _UNPACKED_TUPLES |
| 460 | for alias in aliases: |
| 461 | with self.subTest(alias=alias): |
| 462 | copied = copy.copy(alias) |
| 463 | self.assertEqual(copied.__origin__, alias.__origin__) |
| 464 | self.assertEqual(copied.__args__, alias.__args__) |
| 465 | self.assertEqual(copied.__parameters__, alias.__parameters__) |
| 466 | copied = copy.deepcopy(alias) |
| 467 | self.assertEqual(copied.__origin__, alias.__origin__) |
| 468 | self.assertEqual(copied.__args__, alias.__args__) |
| 469 | self.assertEqual(copied.__parameters__, alias.__parameters__) |
| 470 | |
| 471 | def test_unpack(self): |
| 472 | alias = tuple[str, ...] |
nothing calls this directly
no test coverage detected