gh-128615: Cover pickling of ParamSpecArgs and ParamSpecKwargs (#128616)

This commit is contained in:
sobolevn 2025-01-08 15:04:54 +03:00 committed by GitHub
parent 95cd9c669c
commit 74a517181a
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -5182,6 +5182,18 @@ class C(B[int]):
x = pickle.loads(z)
self.assertEqual(s, x)
# Test ParamSpec args and kwargs
global PP
PP = ParamSpec('PP')
for thing in [PP.args, PP.kwargs]:
for proto in range(pickle.HIGHEST_PROTOCOL + 1):
with self.subTest(thing=thing, proto=proto):
self.assertEqual(
pickle.loads(pickle.dumps(thing, proto)),
thing,
)
del PP
def test_copy_and_deepcopy(self):
T = TypeVar('T')
class Node(Generic[T]): ...