diff options
author | Barney Gale <barney.gale@gmail.com> | 2023-12-22 17:49:09 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-12-22 17:49:09 (GMT) |
commit | ff5e131df5f374f72579b970856dc5646e8b836c (patch) | |
tree | 0f8497d15de8f9e3df09ca043ad586ff0bcf1365 /Lib/test/test_pathlib/test_pathlib.py | |
parent | 4a3d2419bb5b7cd862e3d909f53a2ef0a09cdcee (diff) | |
download | cpython-ff5e131df5f374f72579b970856dc5646e8b836c.zip cpython-ff5e131df5f374f72579b970856dc5646e8b836c.tar.gz cpython-ff5e131df5f374f72579b970856dc5646e8b836c.tar.bz2 |
GH-112855: Slightly improve tests for `pathlib.PurePath` pickling (#113243)
Add a few more simple test cases, like non-anchored paths. Remove misplaced
and indirect test that pickling doesn't change the `stat()` value.
Diffstat (limited to 'Lib/test/test_pathlib/test_pathlib.py')
-rw-r--r-- | Lib/test/test_pathlib/test_pathlib.py | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/Lib/test/test_pathlib/test_pathlib.py b/Lib/test/test_pathlib/test_pathlib.py index d55ccd9..a448f6a 100644 --- a/Lib/test/test_pathlib/test_pathlib.py +++ b/Lib/test/test_pathlib/test_pathlib.py @@ -60,14 +60,16 @@ class PurePathTest(test_pathlib_abc.DummyPurePathTest): def test_pickling_common(self): P = self.cls - p = P('/a/b') - for proto in range(0, pickle.HIGHEST_PROTOCOL + 1): - dumped = pickle.dumps(p, proto) - pp = pickle.loads(dumped) - self.assertIs(pp.__class__, p.__class__) - self.assertEqual(pp, p) - self.assertEqual(hash(pp), hash(p)) - self.assertEqual(str(pp), str(p)) + for pathstr in ('a', 'a/', 'a/b', 'a/b/c', '/', '/a/b', '/a/b/c', 'a/b/c/'): + with self.subTest(pathstr=pathstr): + p = P(pathstr) + for proto in range(0, pickle.HIGHEST_PROTOCOL + 1): + dumped = pickle.dumps(p, proto) + pp = pickle.loads(dumped) + self.assertIs(pp.__class__, p.__class__) + self.assertEqual(pp, p) + self.assertEqual(hash(pp), hash(p)) + self.assertEqual(str(pp), str(p)) def test_repr_common(self): for pathstr in ('a', 'a/b', 'a/b/c', '/', '/a/b', '/a/b/c'): |