Skip to content

Commit

Permalink
tests pathlib compatible
Browse files Browse the repository at this point in the history
  • Loading branch information
CRiddler committed Oct 16, 2019
1 parent ca10c44 commit e98dbfc
Show file tree
Hide file tree
Showing 3 changed files with 12 additions and 6 deletions.
4 changes: 2 additions & 2 deletions nibabel/tests/test_image_api.py
Original file line number Diff line number Diff line change
Expand Up @@ -144,8 +144,8 @@ def validate_filenames(self, imaker, params):
fname = 'an_image' + self.standard_extension
for path in (fname, pathlib.Path(fname)):
img.set_filename(path)
assert_equal(img.get_filename(), path)
assert_equal(img.file_map['image'].filename, path)
assert_equal(img.get_filename(), str(path))
assert_equal(img.file_map['image'].filename, str(path))
# to_ / from_ filename
fname = 'another_image' + self.standard_extension
for path in (fname, pathlib.Path(fname)):
Expand Down
2 changes: 1 addition & 1 deletion nibabel/tests/test_image_load_save.py
Original file line number Diff line number Diff line change
Expand Up @@ -259,7 +259,7 @@ def test_filename_save():
for path in (fname, pathlib.Path(fname)):
nils.save(img, path)
rt_img = nils.load(path)
assert_array_almost_equal(rt_img.get_data(), data)
assert_array_almost_equal(rt_img.get_fdata(), data)
assert_true(type(rt_img) is loadklass)
# delete image to allow file close. Otherwise windows
# raises an error when trying to delete the directory
Expand Down
12 changes: 9 additions & 3 deletions nibabel/tests/test_loadsave.py
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,10 @@ def test_read_img_data():
]
fnames_test += [pathlib.Path(p) for p in fnames_test]
for fname in fnames_test:
fpath = pjoin(data_path, fname)
# os.path.join doesnt work between str / os.PathLike in py3.5
fpath = pjoin(data_path, str(fname))
if isinstance(fname, pathlib.Path):
fpath = pathlib.Path(fpath)
img = load(fpath)
data = img.get_fdata()
data2 = read_img_data(img)
Expand All @@ -49,8 +52,11 @@ def test_read_img_data():
assert_array_equal(read_img_data(img, prefer='unscaled'), data)
# Assert all caps filename works as well
with TemporaryDirectory() as tmpdir:
up_fpath = pjoin(tmpdir, fname.upper())
shutil.copyfile(fpath, up_fpath)
up_fpath = pjoin(tmpdir, str(fname).upper())
if isinstance(fname, pathlib.Path):
up_fpath = pathlib.Path(up_fpath)
# shutil doesnt work with os.PathLike in py3.5
shutil.copyfile(str(fpath), str(up_fpath))
img = load(up_fpath)
assert_array_equal(img.dataobj, data)
del img
Expand Down

0 comments on commit e98dbfc

Please sign in to comment.