From 3953e8573f6415ab8b96f12e60500f83fcbd6077 Mon Sep 17 00:00:00 2001 From: Paul McCarthy <pauldmccarthy@gmail.com> Date: Wed, 25 Oct 2017 15:44:09 +0100 Subject: [PATCH] make importall test a bit more robust --- tests/test_importall.py | 32 +++++++++++++++++++------------- 1 file changed, 19 insertions(+), 13 deletions(-) diff --git a/tests/test_importall.py b/tests/test_importall.py index dfa867efd..ca8027790 100644 --- a/tests/test_importall.py +++ b/tests/test_importall.py @@ -6,20 +6,26 @@ # + import pkgutil +import importlib +import fsl def test_importall(): - import fsl as fsl - import fsl.data as data - import fsl.utils as utils - import fsl.scripts as scripts - - for _, module, _ in pkgutil.iter_modules(fsl.__path__, 'fsl.'): - __import__(module) - for _, module, _ in pkgutil.iter_modules(data.__path__, 'fsl.data.'): - __import__(module) - for _, module, _ in pkgutil.iter_modules(utils.__path__, 'fsl.utils.'): - __import__(module) - for _, module, _ in pkgutil.iter_modules(scripts.__path__, 'fsl.scripts.'): - __import__(module) + + + def recurse(module): + + path = module.__path__ + name = module.__name__ + submods = list(pkgutil.iter_modules(path, '{}.'.format(name))) + + for i, (spath, smodname, ispkg) in enumerate(submods): + + submod = importlib.import_module(smodname) + + if ispkg: + recurse(submod) + + recurse(fsl) -- GitLab