From aad9453a5f1545a4419e5d9f34163ca5a1e60ef8 Mon Sep 17 00:00:00 2001
From: Paul McCarthy <pauldmccarthy@gmail.com>
Date: Mon, 19 Mar 2018 18:38:34 +0000
Subject: [PATCH] unit tests for new MGHImage properties

---
 tests/test_mghimage.py | 18 +++++++++++++-----
 1 file changed, 13 insertions(+), 5 deletions(-)

diff --git a/tests/test_mghimage.py b/tests/test_mghimage.py
index 752c5386d..2496ac4eb 100644
--- a/tests/test_mghimage.py
+++ b/tests/test_mghimage.py
@@ -12,9 +12,10 @@ import            shutil
 import numpy   as np
 import nibabel as nib
 
-import fsl.utils.tempdir as tempdir
-import fsl.data.mghimage as fslmgh
-import fsl.data.image    as fslimage
+import fsl.utils.tempdir   as tempdir
+import fsl.utils.transform as transform
+import fsl.data.mghimage   as fslmgh
+import fsl.data.image      as fslimage
 
 
 datadir = op.join(op.abspath(op.dirname(__file__)), 'testdata')
@@ -27,9 +28,16 @@ def test_MGHImage():
     # Load from a file
     img      = fslmgh.MGHImage(testfile)
     nbimg    = nib.load(testfile)
+    v2s      = nbimg.header.get_vox2ras_tkr()
+    w2s      = transform.concat(v2s, transform.invert(nbimg.affine))
+
+    assert np.all(np.isclose(img[:],             nbimg.get_data()))
+    assert np.all(np.isclose(img.voxToWorldMat,  nbimg.affine))
+    assert np.all(np.isclose(img.voxToSurfMat,   v2s))
+    assert np.all(np.isclose(img.surfToVoxMat,   transform.invert(v2s)))
+    assert np.all(np.isclose(img.worldToSurfMat, w2s))
+    assert np.all(np.isclose(img.surfToWorldMat, transform.invert(w2s)))
 
-    assert np.all(np.isclose(img[:],            nbimg.get_data()))
-    assert np.all(np.isclose(img.voxToWorldMat, nbimg.affine))
     assert img.name         == op.basename(testfile)
     assert img.dataSource   == testfile
     assert img.mghImageFile == testfile
-- 
GitLab