]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
gh-136297: Test all `pickle` protocols in `test_zoneinfo_property.py` (#136298)
authorsobolevn <mail@sobolevn.me>
Sat, 5 Jul 2025 06:14:40 +0000 (09:14 +0300)
committerGitHub <noreply@github.com>
Sat, 5 Jul 2025 06:14:40 +0000 (09:14 +0300)
Lib/test/test_zoneinfo/test_zoneinfo_property.py

index feaa77f3e7f0b929dcf7d9fff4395cba797b055f..294c7e9b27a85747b8823bf7c8ac1ad0f0034371 100644 (file)
@@ -146,20 +146,24 @@ class ZoneInfoPickleTest(ZoneInfoTestBase):
     @add_key_examples
     def test_pickle_unpickle_cache(self, key):
         zi = self.klass(key)
-        pkl_str = pickle.dumps(zi)
-        zi_rt = pickle.loads(pkl_str)
+        for proto in range(pickle.HIGHEST_PROTOCOL + 1):
+            with self.subTest(proto=proto):
+                pkl_str = pickle.dumps(zi, proto)
+                zi_rt = pickle.loads(pkl_str)
 
-        self.assertIs(zi, zi_rt)
+                self.assertIs(zi, zi_rt)
 
     @hypothesis.given(key=valid_keys())
     @add_key_examples
     def test_pickle_unpickle_no_cache(self, key):
         zi = self.klass.no_cache(key)
-        pkl_str = pickle.dumps(zi)
-        zi_rt = pickle.loads(pkl_str)
+        for proto in range(pickle.HIGHEST_PROTOCOL + 1):
+            with self.subTest(proto=proto):
+                pkl_str = pickle.dumps(zi, proto)
+                zi_rt = pickle.loads(pkl_str)
 
-        self.assertIsNot(zi, zi_rt)
-        self.assertEqual(str(zi), str(zi_rt))
+                self.assertIsNot(zi, zi_rt)
+                self.assertEqual(str(zi), str(zi_rt))
 
     @hypothesis.given(key=valid_keys())
     @add_key_examples