From 1165eeb90036c845f401abdca58e88a0cab3a7da Mon Sep 17 00:00:00 2001
From: Paul McCarthy <pauldmccarthy@gmail.com>
Date: Sat, 27 Apr 2019 15:32:24 +0100
Subject: [PATCH] TEST: fsl.utils.transform -> fsl.transform. Re-jigged
 transform test modules. Fix to mesh test

---
 tests/test_atlases.py                         |  2 +-
 tests/test_atlases_query.py                   |  8 ++++----
 tests/test_fsl_convert_x5.py                  |  6 +++---
 tests/test_image.py                           |  8 ++++----
 tests/test_mesh.py                            | 19 +++++++++++++------
 tests/test_mghimage.py                        |  8 ++++----
 tests/test_scripts/test_atlasq_query.py       |  8 ++++----
 tests/test_transform/__init__.py              |  0
 .../test_affine.py}                           |  5 ++---
 .../test_flirt.py}                            | 10 +++++-----
 .../test_nonlinear.py}                        |  6 +++---
 11 files changed, 43 insertions(+), 37 deletions(-)
 create mode 100644 tests/test_transform/__init__.py
 rename tests/{test_transform.py => test_transform/test_affine.py} (99%)
 rename tests/{test_transform_flirt.py => test_transform/test_flirt.py} (92%)
 rename tests/{test_transform_nonlinear.py => test_transform/test_nonlinear.py} (93%)

diff --git a/tests/test_atlases.py b/tests/test_atlases.py
index b2dfec113..97150cf26 100644
--- a/tests/test_atlases.py
+++ b/tests/test_atlases.py
@@ -17,10 +17,10 @@ import mock
 import pytest
 
 import tests
-import fsl.utils.transform      as transform
 import fsl.utils.image.resample as resample
 import fsl.data.atlases         as atlases
 import fsl.data.image           as fslimage
+import fsl.transform            as transform
 
 
 datadir = op.join(op.dirname(__file__), 'testdata')
diff --git a/tests/test_atlases_query.py b/tests/test_atlases_query.py
index 693366a2e..f431130c3 100644
--- a/tests/test_atlases_query.py
+++ b/tests/test_atlases_query.py
@@ -11,11 +11,11 @@ import numpy           as np
 import                    pytest
 
 
-import fsl.data.atlases    as fslatlases
-import fsl.data.image      as fslimage
-import fsl.utils.transform as transform
+import fsl.data.atlases         as fslatlases
+import fsl.data.image           as fslimage
+import fsl.transform            as transform
 import fsl.utils.image.resample as resample
-import fsl.utils.cache     as cache
+import fsl.utils.cache          as cache
 
 from . import (testdir, make_random_mask)
 
diff --git a/tests/test_fsl_convert_x5.py b/tests/test_fsl_convert_x5.py
index aa3854f2c..0dab1ec52 100644
--- a/tests/test_fsl_convert_x5.py
+++ b/tests/test_fsl_convert_x5.py
@@ -3,9 +3,9 @@
 
 import numpy as np
 
-import fsl.utils.tempdir   as tempdir
-import fsl.utils.transform as transform
-import fsl.data.image      as fslimage
+import fsl.utils.tempdir as tempdir
+import fsl.transform     as transform
+import fsl.data.image    as fslimage
 
 import fsl.scripts.fsl_convert_x5 as fsl_convert_x5
 
diff --git a/tests/test_image.py b/tests/test_image.py
index 4a5ae2e80..605dbbc82 100644
--- a/tests/test_image.py
+++ b/tests/test_image.py
@@ -19,10 +19,10 @@ import nibabel      as nib
 
 from nibabel.spatialimages import ImageFileError
 
-import fsl.data.constants    as constants
-import fsl.data.image        as fslimage
-import fsl.utils.path        as fslpath
-import fsl.utils.transform   as transform
+import fsl.data.constants as constants
+import fsl.data.image     as fslimage
+import fsl.utils.path     as fslpath
+import fsl.transform      as transform
 
 from fsl.utils.tempdir import tempdir
 
diff --git a/tests/test_mesh.py b/tests/test_mesh.py
index 243944b2e..a7a4ca5d1 100644
--- a/tests/test_mesh.py
+++ b/tests/test_mesh.py
@@ -6,13 +6,13 @@
 #
 
 
-import os.path as op
-import numpy   as np
-import            mock
-import            pytest
+import os.path  as     op
+import numpy    as     np
+from   unittest import mock
+import                 pytest
 
-import fsl.utils.transform as transform
-import fsl.data.mesh       as fslmesh
+import fsl.transform as transform
+import fsl.data.mesh as fslmesh
 
 from . import tempdir
 
@@ -257,6 +257,13 @@ def test_needsFixing():
 
 def test_trimesh_no_trimesh():
 
+    # Make sure trimesh and rtree
+    # are imported before messing
+    # with sys.modules, otherwise
+    # weird things can happen.
+    import trimesh
+    import rtree
+
     mods = ['trimesh', 'rtree']
 
     for mod in mods:
diff --git a/tests/test_mghimage.py b/tests/test_mghimage.py
index 2496ac4eb..ef53e2fd9 100644
--- a/tests/test_mghimage.py
+++ b/tests/test_mghimage.py
@@ -12,10 +12,10 @@ import            shutil
 import numpy   as np
 import nibabel as nib
 
-import fsl.utils.tempdir   as tempdir
-import fsl.utils.transform as transform
-import fsl.data.mghimage   as fslmgh
-import fsl.data.image      as fslimage
+import fsl.utils.tempdir as tempdir
+import fsl.transform     as transform
+import fsl.data.mghimage as fslmgh
+import fsl.data.image    as fslimage
 
 
 datadir = op.join(op.abspath(op.dirname(__file__)), 'testdata')
diff --git a/tests/test_scripts/test_atlasq_query.py b/tests/test_scripts/test_atlasq_query.py
index a36e1eb5f..20c48634a 100644
--- a/tests/test_scripts/test_atlasq_query.py
+++ b/tests/test_scripts/test_atlasq_query.py
@@ -15,11 +15,11 @@ import scipy.ndimage as ndi
 
 import                  pytest
 
-import fsl.utils.transform as transform
+import fsl.transform            as transform
+import fsl.data.atlases         as fslatlases
 import fsl.utils.image.resample as resample
-import fsl.data.atlases    as fslatlases
-import fsl.data.image      as fslimage
-import fsl.scripts.atlasq  as fslatlasq
+import fsl.data.image           as fslimage
+import fsl.scripts.atlasq       as fslatlasq
 
 from .. import (tempdir,
                 make_random_mask,
diff --git a/tests/test_transform/__init__.py b/tests/test_transform/__init__.py
new file mode 100644
index 000000000..e69de29bb
diff --git a/tests/test_transform.py b/tests/test_transform/test_affine.py
similarity index 99%
rename from tests/test_transform.py
rename to tests/test_transform/test_affine.py
index 442ceaa7d..90901c6ba 100644
--- a/tests/test_transform.py
+++ b/tests/test_transform/test_affine.py
@@ -19,11 +19,10 @@ import six
 
 import pytest
 
-import fsl.utils.transform as transform
-import fsl.data.image      as fslimage
+import fsl.transform  as transform
 
 
-datadir = op.join(op.dirname(__file__), 'testdata')
+datadir = op.join(op.dirname(__file__), '..', 'testdata')
 
 
 def readlines(filename):
diff --git a/tests/test_transform_flirt.py b/tests/test_transform/test_flirt.py
similarity index 92%
rename from tests/test_transform_flirt.py
rename to tests/test_transform/test_flirt.py
index 2419cbbe2..98ebc08a2 100644
--- a/tests/test_transform_flirt.py
+++ b/tests/test_transform/test_flirt.py
@@ -9,14 +9,14 @@ import os.path as op
 
 import numpy as np
 
-import fsl.data.image as fslimage
-import fsl.utils.transform as transform
-import fsl.utils.tempdir   as tempdir
+import fsl.data.image    as fslimage
+import fsl.transform     as transform
+import fsl.utils.tempdir as tempdir
 
-from .test_transform import readlines
+from .test_affine import readlines
 
 
-datadir = op.join(op.dirname(__file__), 'testdata')
+datadir = op.join(op.dirname(__file__), '..', 'testdata')
 
 
 def test_read_write():
diff --git a/tests/test_transform_nonlinear.py b/tests/test_transform/test_nonlinear.py
similarity index 93%
rename from tests/test_transform_nonlinear.py
rename to tests/test_transform/test_nonlinear.py
index 7c24d90da..8a5a051a1 100644
--- a/tests/test_transform_nonlinear.py
+++ b/tests/test_transform/test_nonlinear.py
@@ -4,9 +4,9 @@
 import numpy   as np
 import nibabel as nib
 
-import fsl.data.image                as fslimage
-import fsl.utils.transform           as transform
-import fsl.utils.transform.nonlinear as nonlinear
+import fsl.data.image          as fslimage
+import fsl.transform           as transform
+import fsl.transform.nonlinear as nonlinear
 
 
 def _random_field():
-- 
GitLab