Skip to content
Snippets Groups Projects
Commit 686cde3a authored by Paul McCarthy's avatar Paul McCarthy :mountain_bicyclist:
Browse files

TEST: Image.save semantics have changed

parent 52c27360
No related branches found
No related tags found
No related merge requests found
...@@ -187,6 +187,15 @@ def _test_image_indexed_save(threaded): ...@@ -187,6 +187,15 @@ def _test_image_indexed_save(threaded):
# make sure the data range is correct # make sure the data range is correct
assert img.dataRange == (0, 40) assert img.dataRange == (0, 40)
# Save the image to a different
# location (no changes to data though)
filename = op.join(testdir, 'image2.nii.gz')
img.save(filename)
# known data range
# should not have changed
assert img.dataRange == (0, 40)
# change some data # change some data
data = np.zeros((100, 100, 100)) data = np.zeros((100, 100, 100))
data[:] = 45 data[:] = 45
...@@ -195,35 +204,21 @@ def _test_image_indexed_save(threaded): ...@@ -195,35 +204,21 @@ def _test_image_indexed_save(threaded):
if threaded: if threaded:
img.getImageWrapper().getTaskThread().waitUntilIdle() img.getImageWrapper().getTaskThread().waitUntilIdle()
# save the image # save the image - this will
# cause the image data to be
# loaded into memory
img.save() img.save()
assert img.dataRange == (0, 45)
# access the data - index should
# get rebuilt to this point
img[..., 0]
img[..., 40]
if threaded: if threaded:
img.getImageWrapper().getTaskThread().waitUntilIdle() img.getImageWrapper().getTaskThread().waitUntilIdle()
# make sure we got the modified data
assert img.dataRange == (0, 45)
img[..., 49]
if threaded:
img.getImageWrapper().getTaskThread().waitUntilIdle()
# make sure we got the modified data
assert img.dataRange == (0, 49) assert img.dataRange == (0, 49)
assert np.all(img[..., 40] == data)
# Finally, reload, and verify the change # Finally, reload, and verify the change
img = fslimage.Image(filename) img = fslimage.Image(filename)
assert np.all(img[..., 40] == 45) assert np.all(img[..., 40] == data)
@pytest.mark.longtest @pytest.mark.longtest
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment