Skip to content

Commit 2133e16

Browse files
authored
gh-141510: Fix test_xpickle for Python 3.14 and older (#145069)
Skip tests on frozendict on Python 3.14 and older.
1 parent 34f4fa8 commit 2133e16

File tree

1 file changed

+12
-0
lines changed

1 file changed

+12
-0
lines changed

Lib/test/pickletester.py

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2925,9 +2925,13 @@ def _test_recursive_collection_in_key(self, factory, minprotocol=0):
29252925
self.assertIs(keys[0].attr, x)
29262926

29272927
def test_recursive_frozendict_in_key(self):
2928+
if self.py_version < (3, 15):
2929+
self.skipTest('need frozendict')
29282930
self._test_recursive_collection_in_key(frozendict, minprotocol=2)
29292931

29302932
def test_recursive_frozendict_subclass_in_key(self):
2933+
if self.py_version < (3, 15):
2934+
self.skipTest('need frozendict')
29312935
self._test_recursive_collection_in_key(MyFrozenDict)
29322936

29332937
def _test_recursive_collection_in_value(self, factory, minprotocol=0):
@@ -2942,9 +2946,13 @@ def _test_recursive_collection_in_value(self, factory, minprotocol=0):
29422946
self.assertIs(x['key'][0], x)
29432947

29442948
def test_recursive_frozendict_in_value(self):
2949+
if self.py_version < (3, 15):
2950+
self.skipTest('need frozendict')
29452951
self._test_recursive_collection_in_value(frozendict, minprotocol=2)
29462952

29472953
def test_recursive_frozendict_subclass_in_value(self):
2954+
if self.py_version < (3, 15):
2955+
self.skipTest('need frozendict')
29482956
self._test_recursive_collection_in_value(MyFrozenDict)
29492957

29502958
def test_recursive_inst_state(self):
@@ -3437,6 +3445,8 @@ def test_newobj_generic(self):
34373445
self.skipTest('int and str subclasses are not interoperable with Python 2')
34383446
if (3, 0) <= self.py_version < (3, 4) and proto < 2 and C in (MyStr, MyUnicode):
34393447
self.skipTest('str subclasses are not interoperable with Python < 3.4')
3448+
if self.py_version < (3, 15) and C == MyFrozenDict:
3449+
self.skipTest('frozendict is not available on Python < 3.15')
34403450
B = C.__base__
34413451
x = C(C.sample)
34423452
x.foo = 42
@@ -3458,6 +3468,8 @@ def test_newobj_proxies(self):
34583468
with self.subTest(proto=proto, C=C):
34593469
if self.py_version < (3, 4) and proto < 3 and C in (MyStr, MyUnicode):
34603470
self.skipTest('str subclasses are not interoperable with Python < 3.4')
3471+
if self.py_version < (3, 15) and C == MyFrozenDict:
3472+
self.skipTest('frozendict is not available on Python < 3.15')
34613473
B = C.__base__
34623474
x = C(C.sample)
34633475
x.foo = 42

0 commit comments

Comments
 (0)