MCPcopy Index your code
hub / github.com/RustPython/RustPython / test_concatenate

Method test_concatenate

Lib/test/test_typing.py:2550–2575  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

2548 self.assertEqual(repr(C2[int, str]), f"{fullname}[[int, str], int]")
2549
2550 def test_concatenate(self):
2551 Callable = self.Callable
2552 fullname = f"{Callable.__module__}.Callable"
2553 T = TypeVar('T')
2554 P = ParamSpec('P')
2555 P2 = ParamSpec('P2')
2556 C = Callable[Concatenate[int, P], T]
2557 self.assertEqual(repr(C),
2558 f"{fullname}[typing.Concatenate[int, ~P], ~T]")
2559 self.assertEqual(C[P2, int], Callable[Concatenate[int, P2], int])
2560 self.assertEqual(C[[str, float], int], Callable[[int, str, float], int])
2561 self.assertEqual(C[[], int], Callable[[int], int])
2562 self.assertEqual(C[Concatenate[str, P2], int],
2563 Callable[Concatenate[int, str, P2], int])
2564 self.assertEqual(C[..., int], Callable[Concatenate[int, ...], int])
2565
2566 C = Callable[Concatenate[int, P], int]
2567 self.assertEqual(repr(C),
2568 f"{fullname}[typing.Concatenate[int, ~P], int]")
2569 self.assertEqual(C[P2], Callable[Concatenate[int, P2], int])
2570 self.assertEqual(C[[str, float]], Callable[[int, str, float], int])
2571 self.assertEqual(C[str, float], Callable[[int, str, float], int])
2572 self.assertEqual(C[[]], Callable[[int], int])
2573 self.assertEqual(C[Concatenate[str, P2]],
2574 Callable[Concatenate[int, str, P2], int])
2575 self.assertEqual(C[...], Callable[Concatenate[int, ...], int])
2576
2577 def test_nested_paramspec(self):
2578 # Since Callable has some special treatment, we want to be sure

Callers

nothing calls this directly

Calls 4

TypeVarClass · 0.85
ParamSpecClass · 0.85
reprFunction · 0.85
assertEqualMethod · 0.45

Tested by

no test coverage detected