diff --git a/nipype/utils/filemanip.py b/nipype/utils/filemanip.py index 44654c0197..26859196fc 100644 --- a/nipype/utils/filemanip.py +++ b/nipype/utils/filemanip.py @@ -689,8 +689,6 @@ def loadpkl(infile, versioning=False): pkl_metadata_line = pkl_file.readline() pkl_metadata = json.loads(pkl_metadata_line) except (UnicodeDecodeError, json.JSONDecodeError): - pass - finally: # Could not get version info pkl_file.seek(0) diff --git a/nipype/utils/tests/test_filemanip.py b/nipype/utils/tests/test_filemanip.py index 7eaa8b9c86..ecfd477504 100644 --- a/nipype/utils/tests/test_filemanip.py +++ b/nipype/utils/tests/test_filemanip.py @@ -587,3 +587,13 @@ def test_Path_strict_resolve(tmpdir): # If the file is created, it should not raise open('somefile.txt', 'w').close() assert '%s/somefile.txt' % tmpdir == '%s' % testfile.resolve(strict=True) + + +@pytest.mark.parametrize("load_versioning", [True, False]) +@pytest.mark.parametrize("save_versioning", [True, False]) +def test_pickle(tmp_path, save_versioning, load_versioning): + testobj = 'iamateststr' + pickle_fname = str(tmp_path / 'testpickle.pklz') + savepkl(pickle_fname, testobj, versioning=save_versioning) + outobj = loadpkl(pickle_fname, versioning=load_versioning) + assert outobj == testobj