scipion-em / scipion-em-susantomo

Plugin to use SUSAN within the Scipion framework

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

dependency on emantomo is not mentioned

MohamadHarastani opened this issue · comments

The installation went well then got that:

(base) harastamadm@PC4-0002-D:/shared/scipion3/plugins/scipion-em-susantomo$ scipion3 tests --grep susantomo --show
Scipion v3.0.12 - Eugenius
Running tests....
   scipion3 tests unittest.loader._FailedTest.susantomo

Then:

(base) harastamadm@PC4-0002-D:/shared/scipion3/plugins/scipion-em-susantomo$ scipion3 tests susantomo.tests
Scipion v3.0.12 - Eugenius
Running tests....
Cannot load test susantomo.tests -- skipping
Traceback (most recent call last):
  File "/shared/miniconda3/envs/scipion3/lib/python3.8/site-packages/pyworkflow/plugin.py", line 318, in _tryImportFromPlugin
    output = getattr(importlib.import_module(module), submodule)
  File "/shared/miniconda3/envs/scipion3/lib/python3.8/importlib/__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1014, in _gcd_import
  File "<frozen importlib._bootstrap>", line 991, in _find_and_load
  File "<frozen importlib._bootstrap>", line 961, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "<frozen importlib._bootstrap>", line 1014, in _gcd_import
  File "<frozen importlib._bootstrap>", line 991, in _find_and_load
  File "<frozen importlib._bootstrap>", line 973, in _find_and_load_unlocked
ModuleNotFoundError: No module named 'emantomo'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/shared/miniconda3/envs/scipion3/lib/python3.8/site-packages/pyworkflow/apps/pw_run_tests.py", line 100, in main
    testsDict['tests'].addTests(testLoader.loadTestsFromName(t))
  File "/shared/miniconda3/envs/scipion3/lib/python3.8/unittest/loader.py", line 154, in loadTestsFromName
    module = __import__(module_name)
  File "/shared/scipion3/plugins/scipion-em-susantomo/susantomo/tests/__init__.py", line 32, in <module>
    from .test_protocols import TestSusanCtf
  File "/shared/scipion3/plugins/scipion-em-susantomo/susantomo/tests/test_protocols.py", line 37, in <module>
    ProtEmanExtractSubtomo = Domain.importFromPlugin("emantomo.protocols",
  File "/shared/miniconda3/envs/scipion3/lib/python3.8/site-packages/pyworkflow/plugin.py", line 327, in importFromPlugin
    output = _tryImportFromPlugin(objects)
  File "/shared/miniconda3/envs/scipion3/lib/python3.8/site-packages/pyworkflow/plugin.py", line 324, in _tryImportFromPlugin
    Domain.__pluginNotFound(plugName, errMsg, doRaise)
  File "/shared/miniconda3/envs/scipion3/lib/python3.8/site-packages/pyworkflow/plugin.py", line 470, in __pluginNotFound
    raise Exception("\n\n" + raiseMsg)
Exception: 

 > error when importing from emantomo: No module named 'emantomo'
   Called by <frozen importlib._bootstrap>, line 991
   Check the plugin manager (Configuration->Plugins in Scipion manager window) 
   or use 'scipion installp --help --checkUpdates' in the command line to check for upgrades,
   it could be a versions compatibility issue.


[==========] run 0 tests (0.000 secs)

[  PASSED  ] 0 tests

sorted out after installing emantomo plugin.

Cheers

The plugin does not depend on eman, it's only required to run the test

I see. That is not a problem. The problem is that I see scipion3 tests unittest.loader._FailedTest.susantomo despite that you handled the error somewhere here


Another idea is to move the import from emantomo to inside TestSusanMRAWorkflow (line 97), then one will see the tests and 3/4 will still pass without installing eman.

ok. Will move the import to the local function